我有多个虚拟主机,如下所示httpd.conf
:
<VirtualHost *:80>
ServerName example.com
DocumentRoot "/var/www/html/wordpress"
<Location /wp-admin/>
AuthName "Just What Do Youuu Think You're Doing?"
AuthUserFile /etc/httpd/.htpasswd
AuthType basic
require valid-user
</Location>
...
</VirtualHost>
<VirtualHost *:80>
ServerName coolsite.example.com
DocumentRoot "/var/www/html/coolsite/public"
<Location /*>
AuthName "Just What Do Youuu Think You're Doing?"
AuthUserFile /etc/httpd/.htpasswd
AuthType basic
require valid-user
</Location>
...
</VirtualHost
第一个网站是 WordPress - 其.htpasswd
目的只是保护管理部分。第二个是Laravel- 整个站点都应受到保护(Location /*
)。
第一个虚拟主机按预期工作,但第二个虚拟主机会不断将我重定向到屏幕上的 htpasswd 登录 - 即使我的凭据正确......如果我对多个 vhosts 使用相同的 htpasswd 文件,这是一个常见问题吗? 为什么会这样呢?
如果我从第二个虚拟主机中删除,<Location /*>
我可以正常访问它……只是有点困惑。密码肯定是正确的,因为它在第一个虚拟主机上有效。