在 apache2 中设置虚拟主机时遇到一些问题

在 apache2 中设置虚拟主机时遇到一些问题

我在 apache2 中设置虚拟主机时遇到了一些问题。我有三个子域(a.test.com、b.test.com、c.test.com)连接到同一台服务器。我按如下方式设置虚拟主机,以使每个子域显示其他站点。

# Content of /etc/apache2/sites-available/a.test.com.conf
<VirtualHost *:80>
    ServerName a.test.com
    DocumentRoot /var/www/a
</VirtualHost>

# Content of /etc/apache2/sites-available/b.test.com.conf
<VirtualHost *:80>
    ServerName b.test.com
    DocumentRoot /var/www/b
</VirtualHost>

c.test.com.conf 不存在的原因是我想在客户端尝试访问 c.test.com 时显示 404 notfound 或连接被拒绝(因为 c.test.com 未解析)。但是,当客户端尝试访问 c.test.com 时,它显示 a.test.com 的结果。

我已经禁用了 000-default,但这些设置并没有达到我的预期效果。我应该怎么做才能让 c.test.com 显示 404 notfound 或连接被拒绝?

这是结果ls /etc/apache2/sites-available

000-default.conf
a.test.com.conf
b.test.com.conf

这是结果ls /etc/apache2/sites-enabled

a.test.com.conf
b.test.com.conf

答案1

如果未找到匹配的虚拟主机,则将使用列出的第一个虚拟主机。

使用虚拟主机来000-default.conf配置与其他虚拟主机不匹配的域的行为。例如,使用不存在的文档根目录。

相关内容