Я использую Apache с mod_auth_kerb для выполнения HTTP-аутентификации. Как добавить пользовательские заголовки в ответ 401 «Требуется авторизация», сгенерированный модулем auth?
Соответствующие разделы моей конфигурации Apache приведены ниже. Мой собственный заголовок добавляется после Require valid-user
проверка проходит, но игнорируется при первоначальном запросе, когда сервер генерирует ответ HTTP 401.
<Location /app/login>
AuthType Kerberos
...
Require valid-user
ErrorDocument 401 /redirect-page.html
</Location>
...
<LocationMatch /app/login>
Header always set X-My-Header my-value
</LocationMatch>
Проблема заключалась в ErrorDocument 401
линия. Это изменило REQUEST_URI
на "/redirect-page.html", что означает, что мой <LocationMatch>
больше не применяется. Я изменил этот тег, включив в него как URL-адрес страницы входа, так и URL-адрес документа об ошибке, и теперь все работает, как ожидалось.