子域名总是重定向到主域名。为什么?

子域名总是重定向到主域名。为什么?

当我请求时,site1.example.com我被重定向到example.com/etc/apache2/sites-available/我设置了一个site1.example.de包含以下内容的文件

<VirtualHost *:80>
    ServerName site1.example.com
    DocumentRoot "/var/www/vhosts/example/site1"
        <Directory /var/www/vhosts/example/site1>
          Allow from all
          AllowOverride All
        </Directory>
</VirtualHost>

sudo a2ensite site1.example.com

重新加载 Apache 后,它仍然会将我重定向到主域。有什么想法吗?

我使用apache2/2.2.14 (Ubuntu 10.4)。我的服务器充当名称服务器。

答案1

这些古怪的配置/var/www/vhosts/(看起来像是来自 Plesk?)使用完整 IP 作为其虚拟主机地址声明,因此侦听*:80器永远不会收到对该 IP 的任何请求。假设您的服务器上只有一个 IP,这是不希望发生的。

更改<VirtualHost>新创建的主机中的行,使其用于命中 Plesk 创建的基于名称的虚拟主机的请求:

<VirtualHost 83.169.46.168:80>
    ServerName site1.example.com
    DocumentRoot "/var/www/vhosts/example/site1"
    <Directory /var/www/vhosts/example/site1>
        Allow from all
        AllowOverride All
    </Directory>
</VirtualHost>

答案2

查看 Apache 错误日志中尝试访问子域的条目。大多数时候我遇到这个问题 Apache 无法找到服务器上的目录(或文件权限问题)。

相关内容