我已将我的 ErrorDocument 401 设置为指向我网站的帐户创建页面,但并非所有浏览器似乎都支持此重定向(Safari)。
此外,其他浏览器(Firefox、Chrome)永远不会退出询问密码并显示 ErrorDocument。这会导致大量用户在多次尝试密码后放弃尝试,而没有看到帐户创建页面。
有什么方法可以使重定向更可靠,而不会完全破坏基本身份验证?
我已将我的 ErrorDocument 401 设置为指向我网站的帐户创建页面,但并非所有浏览器似乎都支持此重定向(Safari)。
此外,其他浏览器(Firefox、Chrome)永远不会退出询问密码并显示 ErrorDocument。这会导致大量用户在多次尝试密码后放弃尝试,而没有看到帐户创建页面。
有什么方法可以使重定向更可靠,而不会完全破坏基本身份验证?
您的问题的简单答案是否定的,如果不实施自定义身份验证,您将无法使其更可靠。
Firefox 和 Chrome 显示您在 ErrorDocument 401 指令中指定的页面的唯一方法是单击取消按钮。此外,没有使用 401 HTTP 代码发送的重定向;相反,它是使用 ErrorDocument 401 指令指定的文档的内容。您可以使用 HTML 元标记进行重定向:
<Location "/protected">
AuthUserFile /path/to/users
AuthName "This is protected area"
AuthGroupFile /dev/null
AuthType Basic
Require valid-user
#ErrorDocument 401 /register.html
ErrorDocument 401 "<html><meta http-equiv=\"refresh\" content=\"0;url=/register.html\"></html>"
</Location>
您的问题的可能解决方案是创建自定义基本 HTTP 身份验证模块或使用支持基本 HTTP 身份验证挂钩的 php 之类的语言
我怀疑您的 firefox 和 safari 用户没有在用户名之前进入域,即 MYDOMAIN\USERNAME。Firefox 中有一些设置允许通过身份验证;我不知道野生动物园。