#http #iis #status
Вопрос:
Документация IIS 7.0 показывает, что IIS может возвращать коды состояния (например, 401.1), которые не соответствуют RFC7231, в котором говорится:
Элемент status-code представляет собой трехзначный целочисленный код, дающий результат попытки понять и удовлетворить запрос
Почему IIS возвращает несоответствующие коды состояния, которые нарушают совместимые клиентские реализации?
Ответ №1:
Ваша интерпретация документации IIS неверна.
Если вы используете такой инструмент, как Wireshark, для тщательного анализа ответных сообщений HTTP, сгенерированных IIS/HTTP.sys , вы увидите, что они содержат только трехзначный код состояния, как того требует RFC.
Однако именно в файлах журналов IIS, а также на других страницах трассировок / ошибок добавляется код подстатуса, чтобы лучше классифицировать фактические ошибки.
Имейте в виду, что IIS существует уже несколько десятилетий. Поэтому, если что-то не соответствует требованиям, менее вероятно, что это будет обнаружено так поздно.
Комментарии:
1. Большое вам спасибо, я ценю разъяснение (которое мне не было ясно из документации).