我一直在尝试在Apache 2.4(Windows 10)htdocs目录的子目录中安装密码保护。
我开始使用外部.htaccess文件并迁移到将数据添加到httpd.conf文件中的entyr。
我将.htpasswd文件放在htdocs(root?)上面的目录中,并将目录称为' /。htaccess'。我运行了Process Monitor(以前来自SysInternals)并且知道正在查找和读取.htpasswd和.htaccess文件。
我使用三个不同的地址访问受保护的目录:127.0.0.1(localhost); 192.168.0.101;和' jimjulian.ddns.net'。
在每种情况下,密码表单弹出一次,我填写表格,进入并关闭。在每种情况下,我都可以从那时开始访问,没有表格。
我尝试删除浏览器(Chrome)缓存,但结束了。
有什么我忽略的吗?我能尝试什么吗?
.htaccess内容:
AuthType Basic
AuthName 'Area51'
AuthUserFile 'C:\Apache24\.htpasswd'
require valid-user
我不确定如何处理AllowOverride。在我看来,默认设置None将使.htaccess的内容无效 所以我在conf文件中将其设置为All
答案 0 :(得分:0)
两个启示解决了这个问题。 我的没有IP的DNS更新程序没有运行。 即使我清除了浏览历史记录并定期缓存,我直到现在还没有意识到,在安装了另一个浏览器进行比较后,密码和用户名被保持在会话的长度。一旦我关闭浏览器并重新打开,并再次清除缓存,弹出密码弹出窗口。也许这会使某些人受益。