Я недавно установил PHP 5.2.9-2 на IIS 7 в Windows Server 2008 с пакетом обновления 2 (SP2). Кажется, что почти все работает нормально - PHP работает отлично, почти весь код PHP работает отлично ... КРОМЕ для страниц по умолчанию. Любой документ по умолчанию (index.php) не интерпретируется PHP, и страница просто отображает базовый код PHP в браузере.
Лучший пример - две страницы (index.php + phpinfo.php) с одинаковым кодом:
<? php phpinfo (); ?>
http://mysite.com/test/ -> "<? Php phpinfo ();?>" (Отображается в виде открытого текста)
http://mysite.com/test/index.php -> "<? Php phpinfo ();?>" (Отображается в виде открытого текста)
http://mysite.com/test/phpinfo.php -> Правильная «синяя / серая» страница PHP Info
Что странно: корень моего сайта (http://mysite.com) прекрасно интерпретирует PHP через документ по умолчанию index.php.
Я настроил сайт с помощью «передового опыта» (http://iis.net/fastcgi/configuration). PHP работает через FastCGI. Index.php - это единственный тип документа по умолчанию. «Mysite» находится в подкаталоге от корня диск, и IUSR имеет разрешения повсюду. Сопоставления обработчиков показывают PHP через FastCGI в качестве верхней записи для * .php.
Гуглил это часами, видел других с очень похожими проблемами, но без разрешения.
Спасибо!