【问题标题】:Default site when using apache virtual hosts使用 apache 虚拟主机时的默认站点
【发布时间】:2015-06-07 10:04:35
【问题描述】:

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

<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 地址创建一个虚拟主机......服务器名称是什么?

【问题讨论】:

    标签: apache virtualhost


    【解决方案1】:

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

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

    或者您可以将其留空以按照 Stasik 的回答作为默认值。

    【讨论】:

      【解决方案2】:

      查看here 并搜索“主主机消失”。只需添加一个新的第一个没有名称和别名的虚拟主机,它将匹配未被任何后续虚拟主机处理的请求。

      【讨论】:

        猜你喜欢
        • 2011-07-22
        • 2017-06-04
        • 2016-04-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-10
        • 2018-03-23
        • 2013-06-26
        相关资源
        最近更新 更多