首页 > 网站 > Apache > 正文

如何防恶意解析,禁止用IP访问网站的Apache设置?

2024-08-27 18:30:32
字体:
来源:转载
供稿:网友

一般来说,网站可以用域名和IP来访问。你的网站可以通过IP直接访问,本来这没什么问题,但是会有些隐患:

由于搜索引擎也会收录你的IP地址的页面,所以同一个页面搜索引擎会重复收录,造成页面的权重不如单个收录高。

域名恶意指向的可能。还记得去年还是前年的 google.com.sb 事件吗?google.com.sb 这个域名被恶意指向了百度,后来证实了 google.com.sb 这个域名为第三者恶意指向的,并不是Google所为。当然这只是个玩笑,但是如果被人恶意用别的域名解析到你的IP的话,那么你的网站就能通过别人的域名来访问了。接下来会发生什么?假如那域名是不友善的域名,比如曾经指向非法网站,容易引发搜索引擎惩罚,连带IP受到牵连。即使域名没什么问题,但流量也会被劫持到别的域名,从而遭到广告联盟的封杀。

如何解决这个问题?最直接的方法是让用户只能通过域名来访问网站,而不能通过IP来直接访问。这个可以修改Apache配置文件httpd.conf来实现。下面是小站的实现:

 


  1. NameVirtualHost 121.*.*.*  
  2. <VirtualHost 121.*.*.*>  
  3. ServerName 121.*.*.*  
  4. <Location />  
  5. Order Allow,Deny  
  6. Deny from all  
  7. </Location>  
  8. </VirtualHost>  
  9. <VirtualHost 121.*.*.*>  
  10. DocumentRoot /var/www/vevbcom/  
  11. ServerName www.vevb.com
  12. </VirtualHost>  
  13. <VirtualHost 121.*.*.*>  
  14. DocumentRoot /var/www/vevbcom/  
  15. ServerName vevb.com
  16. </VirtualHost>  

 

第一部分代码是实现拒绝直接通过 121.*.*.* 这个IP的任何访问请求,这时如果你用 121.*.*.* 访问,会提示拒绝访问。

第二部分代码就是允许通过 http://www.vevb.com/ 这个域名访问,主目录指向 /var/www/vevbcom/ (这里服务器OS是 CentOS)。

第三部分代码是允许不带 www 的域名访问,应该能和上面的合并一起写吧。

在这里记录下,方便以后信手拈来。



发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表