• 防恶意解析,禁止用IP访问网站的Apache设置 修改 httpd.conf 实现


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

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

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

    NameVirtualHost 121.*.*.*
    <VirtualHost 121.*.*.*>
    ServerName 121.*.*.*
    <Location />
    Order Allow,Deny
    Deny from all
    </Location>
    </VirtualHost>
    
    <VirtualHost 121.*.*.*>
    DocumentRoot /var/www/nowamagic/
    ServerName www.2013cms.com
    </VirtualHost>
    
    <VirtualHost 121.*.*.*>
    DocumentRoot /var/www/nowamagic/
    ServerName nowamagic.net
    </VirtualHost>
    

      

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

    第二部分代码就是允许通过 http:/www.2013cms.com/ 这个域名访问,主目录指向 /var/www/

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

  • 相关阅读:
    PHP 数组对象 按照某个字段进行排序
    laravel 多条件查询
    PHP QR CODE 类库生成二维码
    TypeError:Cannot read property 'type' of undefined
    input禁止输入的4种方法
    QQ会话调用地址
    禁止左右键复制
    设置Meta标签 清除页面缓存
    百度统计,百度自动推送合并
    强制使用360浏览器 使用webkit内核
  • 原文地址:https://www.cnblogs.com/justphp/p/3568885.html
Copyright © 2020-2023  润新知