apache2默认namevirtualhost

当我使用server.com或www.server.com直接寻址时,我得到了一个站点server.com,但如果使用其ip或其他主机名访问webserver,则发出404。

我有如下的东西:

NameVirtualhost 10.0.0.1:80 <VirtualHost 10.0.0.1:80> #This should be used if Host is server.com or www.server.com ServerName server.com ServerAlias server.com www.server.com DocumentRoot /var/www/ </VirtualHost> <VirtualHost 10.0.0.1:80> #This should be used alternatively RewriteEngine On RewriteRule (.*) - [R=404] </VirtualHost> 

我现在怎么设置,如果主机名不是server.com或www.server.com,应该使用第二个条目?

要回答你的问题,你可以首先加载另一个虚拟主机(第二个虚拟主机),它应该工作。 (反转在conf文件中的顺序)。 如果没有find特定的主机名(server.com或www.server.com),那么Apache将使用匹配的第一个加载的虚拟主机。

但是,如果你只使用你想要的虚拟主机(第一个在你的文件 – server.com / http://www.server.com),没有别的,不是你想要的Apache做什么&#xFF1F; 如果主机名与ServerName和ServerAlias中的主机名不同(IP或其他主机名将被redirect到404),它将发出404。

(Obs:你不需要在ServerAlias中重复server.com,因为它已经在ServerName中了)