所以我有一个为www.company.com设置的虚拟服务器:
<VirtualHost *:80> ServerName www.company.com </VirtualHost>
然后我想将* .company.com引导到另一个站点。 我该怎么做? 我可以想到www。 和里面。 针对特定的虚拟主机,而“其余”指向虚拟主机。
Apache版本是2.2.4
解答在您的答案 :
<VirtualHost *:80> ServerName www.company.com ServerAlias company.com DocumentRoot /path1 </VirtualHost> <VirtualHost *:80> ServerName *.company.com DocumentRoot /path2 </VirtualHost>
礼貌使用通配符“捕捉所有”域 :
<VirtualHost *:80> ServerName subdomain1.company.com DocumentRoot /path/to/subdomain1 </VirtualHost> <VirtualHost *:80> ServerName subdomain2.company.com DocumentRoot /path/to/subdomain2 </VirtualHost> <VirtualHost *:80> ServerName company.com ServerAlias *.company.com DocumentRoot /path/to/primary/domain+catchall </VirtualHost>
请注意,订单是有意义的,超级域必须是最后一个域。 这对于避免在客户端input错误是非常有用的,它会引发一个“不存在的主机”的错误,让你的公司客户认为你是一个糟糕的服务器pipe理员(而不是他是一个坏打字员:P)。