Я установил PHP 5.3.1 VC9 для Windows x86 и выбрал IIS FastCGI как целевой веб-сервер. Моей системой является 32-разрядный Windows XP с IIS 6.0. Перед этим я установил расширение IIS FastCGI.
Теперь, когда я просматриваю свой веб-сайт, я могу все еще видеть все свои старые файлы, но любой файл с расширением .php теперь возвращает 404 ошибки, даже при том, что файл существует.
Противостояние тому, что продукты Microsoft дают напрямую, НАХОДИТСЯ, когда они обеспечивают ошибочные ответы (404 НЕ НАЙДЕН, 500 + ОШИБКА ВЕБ-СЕРВЕРА), что может я делать для фактического выполнения моих файлов PHP через переработчика FastCGI в C:\Program Files\PHP\php-cgi.exe
как указано в конфигурационном файле C:\Windows\system32\inetsrv\fcgiext.ini
:
[Types]
php=PHP
[PHP]
ExePath=C:\Program Files\PHP\php-cgi.exe
InstanceMaxRequests=10000
ActivityTimeout=600
RequestTimeout=600
EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:C:\Program Files\PHP\
Это - out-of-the-box конфигурация из установщика PHP. Очевидно это работало, потому что IIS не начал бы Лгать о файлах PHP, существующих, если бы это не знало, что должно было сделать что-то специальное с теми файлами.
Хорошо посредством большого метода проб и ошибок я нашел проблему.
Я имел к:
C:\WINDOWS\system32\inetsrv\fcgiext.dll
, расширение .php
, и удостоверьтесь, что Глаголы ограничены GET,HEAD,POST
, проверьте флажки "Script engine" и "Verify that file exists"