.htaccess提示输入密码

问题描述:

可能有办法设置一个人的.htaccess文件来每次都提示进行身份验证吗?例如:我打开一个浏览器选项卡,转到pw保护的url,提示输入pw。关闭标签(主浏览器仍然打开)并重复上述操作,并再次提示输入pw。除非关闭浏览器,否则不会发生这种情况。也许这是一个缓存的东西?.htaccess提示输入密码

这是我到目前为止有:提前

AuthType Basic 
AuthName "myName" 
AuthUserFile "/home/myDir/.htpasswds/public_html/myName/passwd" 
require valid-user 

感谢。

事实上,它正在这样(简化):

  • 浏览器发送请求到服务器没有凭据
  • 与403错误Apache的响应,因为“需要有效的用户”中指定
  • 浏览器的提示用户名为&密码
  • 浏览器再次发送请求,此时提供凭证
  • Apache根据AuthUserFile验证凭据并将“有效用户”进行相应的
  • ,如果一切正常 - 推出数据和200个状态码
  • 浏览器接收使用凭证相关域200级缓存,直到浏览器会话过期

正如你所看到的 - 问题出现在浏览器中。您不能强制浏览器忘记它用于域名的密码。通常你不想 - 例如,如果密码保护页面包含图像 - 浏览器将需要每个下载的图像的用户名和密码。

但也有一些提示,你可以尝试:

  • 你可以写你自己的Apache授权处理,只有授权用户它正在访问的页面2回1次;但很难做到这一点
  • 您可以使用某种基于表单的身份验证(如php或asp.net脚本)而不是依赖http身份验证;这种方式是非常灵活的
  • 你可以做一个诡计,每次访问受保护的页面某种脚本更改passwd文件中的密码;然后为每个用户提供两个密码并在每个请求上切换它们;这种方式浏览器总是记住“错误”的密码;它似乎很疯狂,但这是我能想到的最简单的解决方案:-)