Apache 防止恶意解析
在用apache搭建的WEB服务器的时候,如何想只能通过设定的域名访问,而不能直接通过服务器的IP地址访问呢,有以下两种方法可以实现(当然肯定还会有其他方法可以实现),都是修改httpd.conf文件来实现的,当然,如果在有虚拟机的情况下我们会将 httpd-vhosts.conf 下去改他的配置,下面举例说明。
<VirtualHost *:80>
ServerName XXX.XXX.XXX.XXX
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>
<virtualhost XXX.XXX.XXX.XXX:80>
ServerName yourdomain.com
DocumentRoot /home/wwwroot/
</virtualhost>
说明:
XXX.XXX.XXX.XXX 为你的 IP 地址;
第一处 virtualhost 配置为拒绝 IP 的任何访问请求,返回 403 错误;
第二处的 virtualhost 配置为允许通过 yourdomain.com 这个域名访问,网站主目录为/home/wwwroot/。
当然,我们还可以新建一个虚拟主机配置,将来自 IP 的访问 Rewrite 到一个自定义的 PHP 页面,利用 Apache 的 Rewrite 和 PHP 实现 400 错误。