一个 Htpasswd 用于多个 Vhosts(Apache)

一个 Htpasswd 用于多个 Vhosts(Apache)

我有多个虚拟主机,如下所示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 /*>我可以正常访问它……只是有点困惑。密码肯定是正确的,因为它在第一个虚拟主机上有效。

相关内容