Я привык обслуживать сайты из Apache, но теперь я вынужден использовать сервер IIS.
Некоторые мои страницы PHP возвращают ошибку 500, и я не могу отлаживать, потому что IIS подавляет сообщения об ошибках. я пробовал ini_set('display_errors',1);
в коде, но безрезультатно.
Ошибки отображаются на некоторых сайтах, но не на том, который я хочу отладить, поэтому я не думаю, что это глобальная настройка PHP, а скорее как-то связано с настройками сайта для этого сайта.
Я не могу найти четкого ответа, как включить отображение ошибок PHP.
я обнаружил эта ссылка но я не знаю, где найти "system.webServer-> httpErrors".
Как я могу включить отображение ошибок в PHP под IIS?
Предполагая, что у вас есть все правильные настройки в вашем файле php.ini
Благодаря последнему комментарию к этот страница
Как насчет того, чтобы вместо этого их регистрировать?
Отредактируйте php.ini и установите
error_reporting = E_ALL & ~E_NOTICE
log_errors = On
И либо
error_log = syslog
для входа в журнал событий Windows, или
error_log = location/of/logfile
войти в файл.
Я узнал, что это хорошая идея доступ ан Страница, размещенная в IIS с участием InternetExplorer для тестирования.
В моем случае журналы ошибок php были чистыми - оттуда не было никакой подсказки.
Я получил простую невыразительную "500 - внутренняя ошибка сервера" при соединении с firefox / chrome:
... но более полезное сообщение об ошибке ("Ошибка HTTP 500.0 - Внутренняя ошибка сервера C: \ PHP \ php-cgi.exe - Процесс FastCGI неожиданно завершился") при использовании InternetExplorer:
Может также попробовать подключиться с http: // localhost на самом сервере.