为example.com设置虚拟主机,并希望将www.example.com用作我的首选域时,是否使用以下标准实践:
<VirtualHost *:80> ServerName example.com ServerAlias www.example.com # ... </VirtualHost>
…其中我的首选域名是别名?
如果我要切换ServerName和ServerAlias的值,这是否重要? 据我所知,它们是可以互换的(除了你可以指定多个服务器别名)。
据我所知,切换ServerName和ServerAlias的值通常不会影响您的网站的运作方式。
正如手册中提到的, 只有当 UseCanonicalName设置为非默认值时 ,您才会看到在创build自引用redirectURL时使用的ServerName的值(而不是用于访问您的网站的任何URL)。
例如,如果用户键入ServerAlias主机名和URL(如http://www.example.com/splat (不带尾部斜线),则会看到自引用redirectURL,则Apache httpd将redirect他们到http://example.com/splat/ 。
否则,只会在apachectl -S的输出中看到ServerName指令的值,而在错误消息中,作为友好错误消息的标准模板包含来自include/bottom.html的ServerName来自定义它们:
标题:404没有find
未find
在此服务器上找不到请求的URL / some / page。
Apache / 2.2.15(CentOS)服务器在example.com端口80
有一些有效的技术参数可以使用www.example.com ,您可能需要这样做:
<VirtualHost *:80> ServerName example.com Redirect permanent / www.example.com </VirtualHost> <VirtualHost *:80> ServerName www.example.com ServerAlias www.example.org www.example.net # ... </VirtualHost>