使用 apache 虚拟主机时的默认站点

Default site when using apache virtual hosts

我使用虚拟主机指令托管两个域

<VirtualHost *:80>
    ServerAdmin xy
    ServerName xyz
    ServerAlias www.xyz

    DocumentRoot  /var/www/sites/xyz

    <Directory /var/www/sites/xyz>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>


    LogLevel warn

</VirtualHost>

<VirtualHost *:80>
    ServerAdmin xy
    ServerName xyz2
    ServerAlias www.xyz2

    DocumentRoot  /var/www/sites/xyz2

    <Directory /var/www/sites/xyz2>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>


    LogLevel warn

</VirtualHost>

当我使用裸 IP 地址访问站点时,我被定向到第一个虚拟主机 xyz。我想转到默认网站 /var/www/html

我怎样才能做到这一点?如果我使用服务器 IP 地址创建虚拟主机...服务器名称是什么?

查找 here 并搜索 "Main host goes away"。只需添加一个没有名称和别名的新的第一个虚拟主机,它将匹配未被任何后续虚拟主机处理的请求。

只需使用 IP 作为服务器名称即可。

<VirtualHost *:80>
    ServerName 12.345.67.89
    DocumentRoot  /var/www/html
    <Directory /var/www/html>
         ...
    </Directory>
</VirtualHost>

或者根据 Stasik 的回答,您可以将其留空以作为默认值。