php - 如何告诉浏览器忘记 htdigest?

标签 php javascript python authentication lighttpd

我将 Htdigest 身份验证与 lighttpd 一起使用。当用户首次登录网站时,会出现一个标准的用户名/密码对话框。如果输入了正确的用户名和密码,用户可以登录,否则 lighttpd 会显示身份验证失败页面。

到目前为止一切顺利!

问题是当用户想要注销时,浏览器不会忘记用户名和密码。换句话说,只要浏览器打开,用户就可以返回同一站点而无需进行身份验证。一种解决方案是关闭浏览器,以便它忘记身份验证,但我不想强制用户在每次要注销时关闭浏览器。

有没有办法使用 JavaScript 或服务器端代码(即 PHP、Python 或 Lua)让浏览器忘记 htdigest 身份验证?

附言。我们在服务器端使用 Lua 5.1,它不如 PHP 强大,但它在 Linux 2.6 上的 Lighttpd 1.4 中作为 FASTCGI 运行。

最佳答案

这是可以做到的,但是很棘手。没有默认方法可以执行此操作。结论得出from various sources :

您必须欺骗浏览器忘记用户/密码组合。这可以通过让注销页面发送 401 Not Authorized 响应 header 来实现。遗憾的是,详细信息因浏览器而异。

关于php - 如何告诉浏览器忘记 htdigest?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9513206/

相关文章:

php - 不以 2 个打开和关闭的大括号开始和结束的字符串的正则表达式

php - 检测php中是否超出post_max_size的正确方法?

php - 如何停止 ffmpeg 写入日志命令行字符串

javascript - 如何附加带有表单数据的元素? (查询)

python - Virtualenv 完全困惑 - 段错误 : 11

php - 如何从 php 中的字符串中获取所需的位?

javascript - KineticJS:何时使用 toImage() 以及何时使用 cache()

javascript - 如何编写自己的脚手架(像 RoR 那样?)

python - 查找两个或多个以 upper 开头的连续单词并替换为它们的缩写(正则表达式)

python - python中的实例