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

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

我必须使用 Apache 2 管理一个 Web 服务器来提供一些不同的网站 - 每个网站都有自己的域名。该服务器有一个 IP 地址,例如:78.9.10.11。对于每个网站,VirtualHost 的定义如下:

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

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

如何定义用于基于 IP 的访问的 VirtualHost?

答案1

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

在该块内提供您的自定义错误页面(或其他内容)。

答案2

确保VirtualHost配置文件中出现的第一个内容如下

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

然后创建一个index.html包含/var/www/notconfigured您想要的消息

相关内容