当我浏览 IP 地址时,Apache VirtualHost 会应答

当我浏览 IP 地址时,Apache VirtualHost 会应答

我有一个标准版本的 RHEL6,并且我曾经能够DocumentRoot使用 IP 地址浏览服务器。

从那时起,我添加了这两个虚拟主机(仅显示了顶部部分)。出于某种原因,现在当我访问服务器的 IP 地址时,虚拟主机会响应并DocumentRoot使用错误的 IP 地址。

我不太想明确定义一个 Vhost /var/www/html

另一条注释...我已添加NameVirtualHost *:80httpd.conf

知道为什么虚拟主机会回答这个问题吗?

==> axxx-http.conf <==

<VirtualHost *:80>
ServerAdmin [email protected]
ServerName xxyy.com
ServerAlias www.xxyy.com
DocumentRoot /var/www/site
<Directory /var/www/site>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all

==> axxx-ssl.conf <==

<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName xxyy.com
    ServerAlias www.xxyy.com
    ServerAlias admin.xxyy.com
DocumentRoot /var/www/site
<Directory /var/www/site>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All

答案1

当你开始在网络服务器上使用虚拟主机时,你必须为普通的服务器。如果您不创建虚拟主机,则定义的第一个虚拟主机将成为任何与另一个虚拟主机 ServerName 或 ServerAlias 指令不匹配的服务器连接的默认虚拟主机。

检查部分“主要宿主消失“在此 URL 上查看此解释:
http://httpd.apache.org/docs/2.2/vhosts/name-based.html

答案2

*:80 告诉虚拟主机对每个 IP 在端口 80 上进行应答。如果您要使用基于名称的虚拟主机,则必须将默认值定义为默认:80 替换为您想要的默认值。您不能在同一个端口上同时使用 vhost 和非 vhost 配置。

相关内容