很抱歉,如果我的问题标题可能会产生误导,很难说出来。我只是使用apache设置了通配符子域,然而它运行得很完美,当使用www
访问我的主域名时,我得到了404,因为它将www
视为子域名。
<VirtualHost *:80>
ServerName wildcard.domain.com
ServerAlias *.domain.com
VirtualDocumentRoot "/var/www/subdomains/%1"
</VirtualHost>
<VirtualHost *:80>
ServerName www.domain.com
ServerAlias domain.com
DocumentRoot "/var/www/html"
<Directory /var/www/html/>
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
这是我服务器上的apache配置。当我访问(任何).domain.com时,它将显示/var/www/subdomains/(any)
的内容。现在,无论如何,当访问www.domain.com
时,它会转到404,因为{www}不存在于/var/www/subdomains/
中。我想忽略网址中的www
。
总结一下
domain.com
按预期导致我的根www.domain.com
会导致找不到404 /
我还想将导致404s的所有子域重定向回root。
答案 0 :(得分:1)
通过将通配符虚拟主机放置为最后一个虚拟主机来解决。