Intereting Posts

Почему IIS не выполняет PHP-код корневого файла index.php моего сайта?

IIS буквально отправляет код <?php ... ?> В браузер, а затем выполняет его.

Но только для файла root http://domain.com/index.php .

Все остальные .php-файлы в этой папке и файлы index.php во вложенных папках выполняются так, как ожидалось.

Как я могу получить свой корневой код index.php для выполнения?


Обновление: «index.php» – это документ по умолчанию моего веб-сайта …

alt text http://img412.imageshack.us/img412/4130/defaultdocumentmt9.gif

  • IIS 5.1 не запускает PHP должным образом в корневом каталоге, но отлично во всех других папках
  • Запуск блога WordPress в корне сайта с помощью IIS

ОБНОВЛЕНО: я нашел несколько возможных обходных путей для PHP 5 и IIS 7. Если эти решения не работают, предоставьте более подробную информацию об установке index.php , IIS или попробуйте использовать совместимость с IIS 6.

  • Проблема с PHP Включает в IIS7
  • Настройка PHP5 – Относительные пути для включений и других ссылок на файлы

Кажется, вы правильно настроили обработчики. Если вы используете <? ... ?> <? ... ?> убедитесь, что у вас short_open_tag = On в php.ini.

У меня возникла эта проблема, и в конечном итоге она отслеживала исходный код для кодирования файла PHP. По-видимому, я установил, что мой редактор использует Unicode (2-байтовый Unicode, а не UTF-8) в качестве кодировки. Это заставляет PHP не видеть <? теги, но браузер, похоже, умеет хорошо читать файл Unicode, поэтому просмотр источника показывает фактический PHP-код. (Несмотря на то, что у файла был метатег content-type = utf-8!). Сохранение файла PHP в кодировке ANSI или UTF-8 решило проблему.

Много отладки входило в поиск этого простого решения, поэтому я подумал, что добавлю его сюда для всех, у кого есть эта проблема.

Интересным побочным эффектом проблемы было то, что Firefox и Chrome не загружали файл CSS. После дальнейшего изучения я обнаружил, что браузеры должны предполагать ту же кодировку для CSS, что и для HTML, если явно не указано в файле CSS. Просмотр CSS в Chrome или Firefox будет показывать китайские символы! На самом деле это помогло мне в решении.

Вы пробовали перескакивать (останавливать / перезапускать) IIS? Может быть, даже перезапустить машину? Я знаю, что были времена, когда я сделал некоторые изменения конфигурации IIS, которые я бы поклялся, должен был только потребоваться только отскок, чтобы вступить в силу, который не дошел до полного перезапуска машины.