Расширение ISAPI - PullRequest
       36

Расширение ISAPI

0 голосов
/ 15 апреля 2019

Я пишу расширение ISAPI для Windows 10 с использованием VS 2017 и обычного C.

Отлично работает, но теперь у меня проблемы с обработкой ошибок. Я намеренно сталкиваюсь с ошибкой, чтобы убедиться в правильности сообщения об ошибке. Когда клиентское приложение (не браузер) и IIS находятся на одном компьютере, я получаю ожидаемое сообщение об ошибке. Когда я подключаюсь к копии на другом компьютере, я получаю общий HTML-код IIS для статуса 500.

Вот где я генерирую заголовок:

// Send HTTP headers
SendHttpHeaders(pECB, "500 Internal Server Error", "Content-Type: text/plain\r\n\r\n");

SendHttpHeaders - моя функция-обертка для отправки заголовков. Я с

Вот две последние строки кода:

pECB->dwHttpStatusCode = HTTP_STATUS_SERVER_ERROR;
return HSE_STATUS_ERROR;

Почему я не получаю свое собственное сообщение?

1 Ответ

1 голос
/ 16 апреля 2019

Если IIS не настроен иначе, подробные сообщения об ошибках отображаются только для браузеров, подключающихся с локального хоста .

Несмотря на то, что в связанном посте описывается, как управлять этим поведением, обратите внимание, что эта блокировка предназначена для обеспечения безопасности и (как они упоминают) в зависимости от реализации вашего сайта, она может открывать внутренние детали для общего просмотра при возникновении ошибок (то есть те, которые вы не ожидаете использовать это поведение, например, из-за ошибки). Это может или не может быть проблемой безопасности в зависимости от вашей операционной среды (например, общедоступный интернет или корпоративная интрасеть), чувствительности данных и т. Д.

...