Apache:不要通过IP地址提供网站

我必须用Apache 2pipe理一个Web服务器来提供一些不同的网站 – 每个站点都有自己的域名。 服务器有一个IP地址,例如:78.9.10.11。 对于每个站点,VirtualHost都是这样定义的:

<VirtualHost *:80> ServerName mydomain.com ServerAlias *.mydomain.com .... </VirtualHost> 

它工作正常,但有一个configuration问题:如果有人试图通过其IP地址( http://78.9.10.11 )访问服务器,第一个VirtualHost交付 – 我不想要的。 相反,访问应该被阻止,或者应该提供一个特殊的网站(来呈现某种错误信息)。 服务器只能按域名交付网站。

我如何定义一个用于IP访问的VirtualHost?

 <VirtualHost 78.9.10.11> .... </VirtualHost> 

服务器上的自定义错误页面(或其他)在该块内。

确保出现在你的configuration文件中的第一个VirtualHost是这样的

 <VirtualHost *:80> ServerName not.configured DocumentRoot /var/www/notconfigured ... </VirtualHost> 

然后在/var/www/notconfigured创build一个index.html/var/www/notconfigured用你想要的消息来configuration