使用 httpd 设置子域名的问题

使用 httpd 设置子域名的问题

嘿,我在显示子域名时遇到了问题,我正在使用 HTTPD,并在 conf.d 中设置了我的 conf,如下所示

<VirtualHost *:80>
    ServerName wp.{domain}.com
    SetEnvIfNoCase HOST ^wp\.{domain}\.com\.?(:80)?$ PROTECTED_HOST

    DocumentRoot /var/www/html/wp.{domain}.com

    LogLevel info ssl:warn
    ErrorLog ${APACHE_LOG_DIR}/wp.error.log
    CustomLog ${APACHE_LOG_DIR}/wp.access.log combined

    DirectoryIndex index.php

    SetEnv APPLICATION_ENV development

    <Directory /var/www/html/wp.{domain}.com/>
        AuthUserFile /root/htpasswd
        AuthType Basic
        AuthName "Password Protected"

        Order Deny,Allow
        Satisfy any
        Deny from all
        Require valid-user
        Allow from env=!PROTECTED_HOST
    </Directory>
</VirtualHost>

我也把它放在了我的 httpd.conf 中

我的主机文件如下所示

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

127.0.0.1       {domain}.com        wp.{domain}.com
192.237.179.187 {domain}.com        wp.{domain}.com
10.208.155.37   serve.smart.com     wp.{domain}.com

我得到的错误是_default_ VirtualHost overlap on port 80, the first has precedence

NameVirtualHost *:80添加我的子域名时停止工作

我该如何解决?

答案1

ServerAlias {domain}.com您的 vhost 配置似乎存在缺失。

如果该虚拟主机是唯一的或默认的(第一个)虚拟主机,那么这无关紧要,因为任何不匹配的主机名都会转到该虚拟主机。但从您收到的错误消息来看,您似乎还有其他虚拟主机。您没有告诉我们它们是什么。

为什么 wp.domain.com 会解析为三个不同的 IP 地址?我从未尝试过,所以我不确定您会得到什么 - 第一个、最后一个、随机还是循环。

相关内容