我了解基于名称的虚拟主机(即以不同方式提供两个域名)和基于 IP 的虚拟主机(即以不同方式提供两个 IP)的概念
但...
我应该始终指定一个 IP 地址,还是可以使用 *?许多基于名称的虚拟主机示例仍然指定 IP 地址。为什么 VirtualHost 是块而 NameVirtualHost 是指令?为什么基于 IP 的虚拟主机需要 NameVirtualHost?
我了解基于名称的虚拟主机(即以不同方式提供两个域名)和基于 IP 的虚拟主机(即以不同方式提供两个 IP)的概念
但...
我应该始终指定一个 IP 地址,还是可以使用 *?许多基于名称的虚拟主机示例仍然指定 IP 地址。为什么 VirtualHost 是块而 NameVirtualHost 是指令?为什么基于 IP 的虚拟主机需要 NameVirtualHost?
您可以在两个指令中指定 *。
NameVirtualHost 仅定义您将在其上使用名称虚拟主机的 IP。不包含其他指令,因此没有理由阻止它。另一方面,VirtualHost 确实包含特定虚拟主机的其他指令,因此它必须是一个块。
你不需要它。见例子。
推荐阅读:Apache 虚拟主机文档