域名继续使用默认的 apache 配置

域名继续使用默认的 apache 配置

我有一个 apache2 设置 (Ubuntu 16,Apache 2.4.18),其中定义了多个虚拟主机。每个虚拟主机在 /etc/apache2/sites-available 中都有自己的 .conf 文件,并带有指向 /etc/apache2/sites-enabled 的软链接。

除了一个虚拟主机外,其他所有虚拟主机都正常工作。我已三重检查是否ServerName与域匹配(确实如此),但当我进入该域时,我最终进入了DocumentRoot默认虚拟主机,我不知道为什么。我还删除并重写了整ServerName行,以防有隐藏的控制字符。

我对一个正常工作的虚拟主机和一个不工作的虚拟主机进行了比较,唯一的区别是DocumentRootServerName

我已经检查过没有其他具有相同域名的虚拟主机(唯一的另一个是 SSL 虚拟主机)

还有什么我可以寻找的来帮助解决这个问题吗?

编辑:根据要求,VH 文件(为简洁起见,域名/文件夹被隐藏,并且注释被删除)

<VirtualHost *:80>
    ServerName MYDOMAIN.COM
    ServerAdmin [email protected]
    DocumentRoot /var/www/MYDOMAIN.COM

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

编辑 2:我删除了默认 VH 并重新启动,然后问题 VH 工作正常。我重新添加了默认 VH 并重新启动,问题 VH 继续正常工作了大约 20 秒,然后又恢复到相同的问题。

答案1

据我所知,问题发生是因为该域名列在 /etc/hosts 文件中,并在 /etc/hostname 中设置。从那里删除它似乎可以解决问题。

相关内容