Ошибка синтаксического анализа PHP на веб-сайте Drupal - PullRequest
0 голосов
/ 21 декабря 2009

Я работаю над сайтом на Drupal, который отлично работает на удаленном сервере (стек LAMP), а также на всех других системах разработчика (стек WAMP). Но когда я пытаюсь его запустить, код PHP выкладывается в браузер вместе с HTML, а не анализируется, как должно.

Очень мало информации, которую я могу почерпнуть из журналов ошибок. Сам PHP установлен правильно, и чистая установка Drupal работает. Только код, который я извлекаю из нашего репозитория, работает неправильно и только в моей собственной системе.

Красивые URL тоже не работают, и мне нужно использовать формат / q = xxx, чтобы вообще попасть на страницы. Красивые URL просто заканчиваются ошибкой разбора в странных местах, когда там не должно быть ошибок разбора. Повторюсь - код работает хорошо везде, кроме моей системы.

Есть ли место, где я могу начать искать, чтобы решить эту проблему?

.p

Ответы [ 2 ]

4 голосов
/ 21 декабря 2009

Если вы видите код PHP в html, то интерпретатор не вызывается. PHP либо не установлен, либо неправильно настроен. Вы используете короткие теги? Если это так, у вас включена опция коротких тегов в php.ini?

Простой способ проверить это - пройти через все переменные и попробовать простой скрипт php вне Drupal. Поместите следующее в скрипт и запустите его. Это может дать вам некоторое представление о том, что происходит.

<?php
  echo 'Hello World!';
?>

<?
  echo 'Hello World!';
?>
0 голосов
/ 21 декабря 2009

Если вы создали узел, а затем использовали PHP-код в качестве его тела, то убедитесь, что для формата ввода установлено значение «PHP-код»; иначе код PHP будет проанализирован как текст, а теги <?php ?> экранированы.
Это объясняет, почему вы их видите.

Если это не так, то я бы проверил, что сообщил Майк Б, или файлы с расширением .php не считаются файлами PHP.

...