Мы запускаем PHP 5.2.5 на сервере IIS 7, и у нас возникают проблемы с отображением ошибок PHP ... В тот момент, когда у нас возникает ошибка PHP, сервер отправляет обратно ошибку 500 с сообщением «Страница не может быть отображается, потому что произошла внутренняя ошибка сервера. "
Это может быть хорошим параметром для рабочих сайтов, но это довольно раздражает на сервере разработки ... ;-)
Я попытался настроить php.ini
отображение ошибок на экране, а также записать их в определенную папку, но кажется, что сервер ловит все ошибки раньше и предотвращает и обрабатывает с помощью PHP ...
Кто-нибудь знает, что мы должны сделать, чтобы IIS отображал ошибки PHP на экране? Любые ссылки, советы или учебные материалы по этому вопросу будут оценены!
log_errors=1
,error_reporting=-1
,log_errors_max_len=0
.ini_set("display_errors", "on");
добавьте эти строки в php файл.Ответы:
Просто, чтобы перепроверить, есть ли у вас логирование
error_reporting = E_ALL
иdisplay_errors = On
в вашемphp.ini
? Обычно этого достаточно для отображения этих ошибок в IIS 7.Далее, посмотрите на ваши настройки IIS, так как они могут быть настроены так, чтобы показывать только сообщения об ошибках локально. В редакторе конфигурации IIS 7 это находится под system.webServer-> httpErrors. Вам нужно будет изменить errorMode на подробный из DetailLocalOnly. Очевидно, теперь это означает, что любой, просматривающий ваш сайт, сможет увидеть ошибку.
В качестве альтернативы, если вы хотите сохранить их локальными, вы можете использовать удаленный рабочий стол, чтобы войти на сервер и запустить приложение оттуда, если можете.
источник
system.webServer
моей кровью и добавьте примечание: «Да, есть комбо».Я просто хотел добавить, что для «istingResponse »должно быть установлено« PassThrough ». Я не получил никаких реальных сообщений об ошибках без этой дополнительной настройки.
источник
Вы можете сделать это легко с помощью графического интерфейса IIS Manager. Выберите свой сайт и дважды щелкните страницы ошибок. Затем нажмите «Редактировать настройки функций ...» и выберите опцию «подробные ошибки» вместо стандартных «подробных ошибок для локальных запросов и пользовательских страниц ошибок для удаленных запросов». Вуаля, все просто!
источник
Мне пришлось зайти в настройки веб-сервера в конфигурацию php, там есть настройка для отчетов об ошибках, и по умолчанию она настроена на работу. Пришлось изменить его в разработке даже после изменения php.ini и предложения здесь. Я использую iis 7.5 на 2008 R2.
источник