У меня есть сайт в интрасети, использующий аутентификацию Kerberos. У меня возникают проблемы, когда пользователю не разрешен доступ
В Firefox ErrorDocument 401, установленный в .htaccess, работает, но в IE / EDGE / CHROME вы получаете ошибку браузера (см. Ниже)
Chrome:
Этот сайт недоступен
Веб-страница по адресу http: навсегда переехали на новый веб-адрес. ERR_INVALID_RESPONSE
IE / EDGE:
Невозможно перейти на эту страницу
• Убедитесь, что веб-адрес http: // mysite / является правильно • Найдите этот сайт в Bing • Обновите страницу
Дополнительная информация Дополнительная информация
Соединение с сайтом было сброшено.
Код ошибки: INET_E_DOWNLOAD_FAILURE
.htaccess
AuthType Kerberos
AuthName "Staff Intranet"
KrbAuthRealms DOMAIN.LOCAL
KrbServiceName HTTP
Krb5Keytab /etc/kerberos.keytab
KrbMethodNegotiate On
KrbSaveCredentials On
KrbMethodK5Passwd On
KrbAuthoritative off
KrbVerifyKDC off
KrbLocalUserMapping On
AuthLDAPURL "ldap://DOMAINCONTROLLER/DC=DOMAIN,DC=local?sAMAccountName"
AuthLDAPBindDN "CN=IntranetSites,OU=Non-staff,OU=Users,DC=DOMAIN,DC=local"
AuthLDAPBindPassword "PASSWORD"
Require ldap-user user1
Require ldap-user user2
ErrorDocument 401 "<html><meta http-equiv=\"refresh\" content=\"0;url=/index.php?App=Intranet&Access=Denied\"></html>"
/ var / log / apache2 / error.log
Я получаю одну и ту же ошибку, независимо от того, какой браузер я использую.
[Sun Aug 06 23:41:39.848945 2017] [authz_core:error] [pid 6471] [client 192.168.31.250:64258] AH01631: user user3 : authorization failure for "/protectedfolder/": , referer: http://mysite/
Я также отключил дружественные страницы ошибок в Internet Explorer, но по-прежнему получаю ту же ошибку.
Заранее спасибо за помощь
Иногда это случается, если ответ / документ об ошибке, который вы посылаете с сервера, слишком мал. Все, что ниже определенного количества байт и браузер, скорее всего, выдаст собственное сообщение об ошибке. (Это, конечно, предполагает, что настройка браузера на отображение "дружественных" сообщений об ошибках уже была отключена)
В прошлом это была классическая "проблема" с Internet Explorer. Но и другие браузеры делают то же самое.
Решение - просто посылать больший ответ. В IE достаточно просто подкрепить ответ большим HTML-комментарием - так он на самом деле не виден пользователю
.