При попытке запустить файл PHP на Windows server 2012 и IIS я продолжаю получать ошибку 500. Я не могу найти никаких подробных журналов или чего-то еще. Однако, когда я перехожу в PHP Manager для IIS и нажимаю кнопку проверки конфигурации, я получаю следующую ошибку:
Detailed Error Information:
Module FastCgiModule
Notification ExecuteRequestHandler
Handler PHP55_via_FastCGI
Error Code 0xc0000135
Requested URL http://domain.com:80/brkld3ip.php
Physical Path drive:\sites\domain.com\brkld3ip.php
Logon Method Anonymous
Logon User Anonymous
Я установил PHP с помощью Microsoft Web Platform Installer 5.0 на свежую установку Windows Server.
Я новичок в IIS из Linux. Так что я недостаточно «изучен» в IIS, чтобы знать, что происходит. Я попытался обновить распространяемый С ++ 2012 update 4, как предлагают несколько веб-сайтов. У кого-нибудь есть другие идеи?
РЕДАКТИРОВАТЬ: Еще я проверил ограничение памяти. Один сайт предложил увеличить мой предел памяти. Без изменений.
РЕДАКТИРОВАТЬ: Вопрос: нужно ли перезагружать Windows, чтобы изменения PHP вступили в силу?
Вполне вероятно, что вам не хватает правильной среды выполнения VC ++ для используемой версии PHP.
Если вы используете PHP 5.5.x, вам необходимо убедиться, что установлена среда выполнения VC ++ 11:
http://www.microsoft.com/en-us/download/details.aspx?id=30679
Убедитесь, что вы скачали и установили версию x86 (vcredist_x86.exe
), PHP в Windows еще не 64-битный.
Если вы используете PHP 5.4.x, вам необходимо установить среду выполнения VC ++ 9:
http://www.microsoft.com/en-us/download/details.aspx?id=5582
Меня поймало подобное сообщение, и оказалось, что я не установил роль сервера CGI (в IIS -> Разработка приложений).
У меня была такая же ошибка для PHP 7.0.3 на сервере 2012 R2 с IIS 8.5.
Решение заключается в установке: Visual C ++ Redistributable для Visual Studio 2015, 32 бита.
После установки все заработало.
По-прежнему была ошибка 500 после установки распространяемого пакета Visual C ++ для 32-разрядной версии Visual Studio 2015.
Запустил procmon из microsoft sysinternals и при запросе моей веб-страницы php обнаружен
w3wp.exe C:\PHP\php-cgi.exe "ACCESS DENIED"
w3wp.exe - это пул приложений, работающий под IIS
Предоставление конкретному пользователю пула приложений разрешений READ / EXECUTE для c: \ php устранило проблему.