我已经将这段代码放在我想要保护的文件夹的.htaccess
文件中:
AuthName "restricted area"
AuthType Basic
AuthUserFile /home/#/#/#/#/#/.htpasswd
require valid-user
在同一个文件夹中,我放置了.htpasswd
:
my:pass
当我进入受保护文件夹的URL时,即使我输入了正确的密码,浏览器也会不断地要求我输入密码。
我知道AuthUserFile
中提到的根目录是可以的,因为我已经找到了它:
<?php
$dir = dirname(__FILE__);
echo "<p>Full path to a .htpasswd file in this dir: " .
$dir . "/.htpasswd" . "</p>";
?>
有什么问题吗?
在require -user
例如:Require user markpanado
但不是:
Require markpanado
的问题,所以我为我的网站发现,是htpasswd文件路径与htaccess中提供的路径不一样。我花了几个星期的时间试图找到问题所在,但是尽管您使用htpassword创建用户名和通行证,但该文件没有与安全文件夹通信。你需要找出原因。可能是拼写错误,或者就像我的情况一样,htpasswd被保存在一个完全不同的文件夹中,而我有两个htpasswd在不同的文件夹中。这两个需要通信htaccess和htpassword,希望这能节省你的时间,我是在几个星期的不眠之夜后想出的
我刚刚遇到这个问题。经过几天的努力,我终于找到了问题的根源:
在使用AuthType Basic和从网站发送401消息时触发此提示。
是否有可能在每个请求时从服务器发送401 HTTP状态码消息?