Apache 虚拟主机不适用

Apache 虚拟主机不适用

我正在设置一个需要目录密码的虚拟主机。我检查了一下,以下条目在本地有效,但在服务器(Ubuntu)上无效。您有什么提示可以说明本地和远程环境之间有什么区别吗?

<VirtualHost example.com:443>
    ServerName example.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    <Directory "/var/www/html/public">
        AuthType Basic
        AuthName "Restricted Content"
        AuthUserFile /etc/htpasswd/.htpasswd
        Require valid-user
    </Directory>
</VirtualHost>

服务器在/etc/apache2/sites-available/文件夹中还有一个名为 000-default.conf 的虚拟主机。此 vhosts 文件与我的相同,但没有 Directory 规范,并且带有 *:80 且没有 ServerName。

我的服务器有 2 个 DNS,我希望其中一个请求密码。

答案1

这是我在评论中猜测的:当你从你的电脑上访问服务器时,你是按名称访问的,所以你输入的是粘贴的代码。当你访问服务器时本地(这是系统管理员所说的‘来自/在同一台机器上’),你正在点击000-default.conf

您也许可以删除符号链接/etc/apache2/sites-enabled/000-default.conf,因为从您所说的内容来看,您似乎希望上述代码成为默认虚拟主机,无论您如何访问服务器,您始终可以访问该网站。

相关内容