【问题标题】:how to make .htaccess always request password如何使 .htaccess 始终请求密码
【发布时间】:2015-11-06 19:32:03
【问题描述】:

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

感谢您的帮助!

【问题讨论】:

    标签: apache .htaccess http


    【解决方案1】:

    这是不可能通过“正常”方式实现的。不是因为不可能实现对每个请求的身份验证请求,事实上这可能已经由您完成。

    相反,问题只是客户端浏览器自动提供身份验证凭据,从而阻止身份验证弹出窗口出现,因此对用户来说是可视化的。浏览器缓存这些凭据的原因非常明显:正是为了防止用户被重新提示每个请求。

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

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

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

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

    简而言之:

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

    【讨论】:

    • 非常感谢您的详细解答!我怀疑这是不可能通过“正常”方式实现的;-)
    • @JakobBenz 欢迎您!请注意,我建议的选项实施起来并不复杂。所以有 are 选项。然而,这是一个有点奇怪的要求,这就是为什么我在最后提出问题的原因......所以这一切都归结为:是的,可能,但你必须这样做,没有单一命令启用选项。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-06
    • 2014-02-11
    • 1970-01-01
    相关资源
    最近更新 更多