如何使.htaccess始终请求密码

时间:2015-11-06 19:32:04

标签: apache .htaccess http

是否有可能每次都让htaccess请求密码,而不仅仅是清除缓存?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

“正常”意味着这是不可能的。并不是因为无法实现对每个请求进行身份验证的请求,实际上这可能已经由您完成。

相反,问题只是客户端浏览器自动提供身份验证凭据,从而阻止显示身份验证弹出窗口,因此可以向用户显示。浏览器缓存这些凭据的原因非常明显:确切地阻止用户被重新提交每个请求。

我能想象的唯一“解决方法”:

  1. 始终拒绝对每个第一个请求的合法身份验证请求进行访问,但仅为每个第二个请求授予访问权限。不过,这听起来像是一个可怕的建筑。不知道这会产生什么副作用......

  2. 从不同的主机名(有时称为“子域”)提供每个请求。在这种情况下,浏览器显然重用缓存的凭据,因为页面将显示为单独的站点。如果您可以使用通配符DNS条目将所有任意主机名解析为同一IP地址,并且您可以在服务器端配置默认主机,则这应该很容易实现。

  3. 每个页面都可以要求不同的身份验证凭据。也许沿着这个方案:页面标题作为用户名,并始终使用相同的密码。结合例如Linux很棒的PAM“权威胶水”,应该可以很容易地实现这样的认证方案。但我怀疑这是你在找什么: - )

  4. 简而言之:

    • 你可能正试图解决错误的问题
    • 也许您应该开始考虑真正想要解决的问题,而不是您认为可以解决的问题