我试图用密码保护我的公用文件夹,以便任何尝试从外部访问的人都会被提示输入密码,但不能输入本地密码。到目前为止,我已经可以使用127.0.0.1而不是localhost来工作了。显然我可以使用ip地址,但更多的是我想知道为什么它不起作用的事实。我不喜欢被打败!

#Enable Password Protection
AuthName "Password Protected Server"
AuthType Basic
AuthUserFile c:\xampp\apache\security\.htpasswd
Require valid-user
Order allow,deny
Allow from localhost
Allow from 127.0.0.1
Satisfy Any


到目前为止,我的代码是以下内容的累积:

http://www.groovypost.com/howto/how-to/htaccess-password-protect-apache-website-security/

htaccess password protect but not on localhost

如果有帮助,我在Windows 7上运行XAMPP 1.7.3。

任何帮助将不胜感激!

最佳答案

听起来像IPv6问题。当您使用127.0.0.1连接到站点时,Apache会将请求视为来自IPv4本地主机(127.0.0.1)。但是,当连接到本地主机时,Apache会将请求视为来自IPv6本地主机(:: 1)。

如果这是问题,您应该可以通过将Allow from localhost行替换为Allow from ::1行来解决。

10-08 02:52