Подтвердить что ты не робот

Включить обработку ошибок HTTP IIS7?

Я только что установил мой первый сервер Windows Server 2008/IIS7.5 для участия в конкурсе, в котором я участвую. Я не могу на всю жизнь понять, как отключить обработку ошибок ПОЛНОСТЬЮ. Единственные варианты, которые я вижу:

  • Пользовательские
  • Подробная
  • Подробный локальный, настраиваемый для удаленных

Я хочу полностью отключить эту функцию, и я не вижу никакого способа сделать это. Я что-то пропустил?

Моя ситуация:

У меня есть RESTful PHP framework, который ловит исключения и испускает статус HTTP 500, если исключение еще не обработано. Затем он помещает указанное сообщение исключения в тело ответа и отправляет его в браузер. Это отлично работает в Apache - отправляются правильные заголовки, и сообщение отображается пользователю. Однако в IIS ответ для кодов состояния 4xx и 5xx HTTP всегда перехватывается и вводится каким-либо другим подготовленным сообщением или HTML файлом, и именно это я больше не хочу делать. Пожалуйста, помогите!

4b9b3361

Ответ 1

После более обширного поиска я нашел ответ здесь:

http://blogs.msdn.com/webdevelopertips/archive/2009/08/24/tip-93-did-you-know-php-and-custom-error-pages-configuration.aspx

Решение состоит в том, чтобы вручную отредактировать файл web.config с помощью этой пользовательской записи "httpErrors":

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpErrors existingResponse="PassThrough" />
    </system.webServer>
</configuration>

Однако из-за функции блокировки IIS 7.0 вы можете получить "Этот раздел конфигурации не может использоваться по этому пути. Это происходит, когда раздел заблокирован на родительском уровне". ошибка. Чтобы решить эту проблему, выполните в командной строке следующее:

cd C:\Windows\System32\inetsrv

appcmd unlock config /section:httpErrors

Ответ 2

В Диспетчере IIS → Сайт → Страницы ошибок щелкните правой кнопкой мыши на каждой странице ошибки и выберите "Удалить".

К сожалению, нет способа сообщить IIS не вмешиваться со стороны script, поэтому это всегда вызывает раздражающую проблему с развертыванием.