Apache 虚拟主机服务器名称/服务器别名查询



>我正在为域设置命名虚拟主机配置,例如 www.examplesite.uk

以下哪个名称和别名定义更可取?有区别吗?我在网上看到了各种例子,这是双向的。

ServerName www.examplesite.uk
ServerAlias examplesite.uk

ServerName examplesite.uk
ServerAlias www.examplesite.uk

或者只是

ServerName www.examplesite.uk

谢谢。

区别是微妙的。如文档中所述ServerName显示服务器用于标识自身的主机名和端口,同时ServerAlias为将请求与名称虚拟主机匹配时使用的主机提供备用名称。

在基于名称的虚拟主机中,主机名由请求的 Host 标头指定。

使用 http://www.example.com 打开网站会导致"www.example.com"作为主机标头。使用 http://example.com 会导致"exmaple.com"作为主机标头。

因此,要涵盖这两种方式,常见的做法是:

ServerName example.com
ServerAlias www.example.com

如果您输入ServerName www.examplesite.uk并且主机标头为"examplesite.uk",则Apache将检查与其他VH的匹配项(如果有(。如果没有,Apache将使用第一个VH。因此,您的最后一个选项可能无法检索所需的网页。

您还可以检查:在 apache2 配置中,ServerName 和 ServerAlias 有什么区别?

最新更新