sites-available 中的 ServerName 与托管站点不匹配

sites-available 中的 ServerName 与托管站点不匹配

我可以访问两个不同的 Web 服务器,但这些服务器不是我设置的(无法联系到设置服务器的人),它们在不同的子域上托管同一个网站,但其中一个是备份,用于设计新内容,另一个是实时版本。它们在两个不同的子域上托管网站,如下所示。

sub1.domain.com (实时) sub2.domain.com (备份)

我最近在查看系统是否需要重新启动的应急措施,并注意到备份站点有一个奇怪的“sites-available”配置。它将国际域名 (.nu) 列为 ServerName,而不是预期的 sub2.domain.com。我检查了实时服务器以查看其配置方式,服务器名称与预期一致 (sub1.domain.com)。

我尝试查找国际域名,但无法访问,目前实际上可以购买。两个网站目前都可以使用,但我不确定备份服务器是否真的可以使用这个错误的服务器名称。

关于其如何运作,有什么提示吗?

更新

<VirtualHost *:####>
        ServerAdmin [email protected]
        ServerName sub.domain.nu

        DocumentRoot /home/userx/www
        <Directory /home/userx/www>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                Allow from all
        </Directory>

#other sub directory configs 
#some error log statements are here

</VirtualHost>

答案1

在没有完整配置等更多细节的情况下,我敢说它正在运行,因为 sub2.domain.com DNS 条目指向您的服务器,并且您的服务器具有默认(即没有服务器名称)配置,该配置与 sub2.domain.com 的配置相同(可能也是默认文件位置,如 /var/www/ 等)。

或者按照文档简单来说,它使用默认配置,因为没有匹配的 ServerName 所以它会退回:

使用基于 IP 的虚拟主机时,特殊名称默认可以指定,在这种情况下,此虚拟主机将匹配其他虚拟主机中未明确列出的任何 IP 地址。在没有任何默认虚拟主机“主”服务器配置,由 VirtualHost 部分之外的所有定义组成,当没有 IP 匹配时使用。(但请注意,与 NameVirtualHost 指令匹配的任何 IP 地址都不会使用“主”服务器配置,也不会使用默认虚拟主机。有关更多详细信息,请参阅基于名称的虚拟主机文档。

http://httpd.apache.org/docs/2.2/mod/core.html#virtualhost

相关内容