网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

如何有效禁止服务器爬虫,保护网站数据安全?

GG网络技术分享 2025-11-24 02:20 2


哦哦,你们知道吗,就像我们玩游戏一样,有些讨厌的家伙总是想来偷kan我们的得分。在网络上,那些讨厌的家伙就是爬虫,它们喜欢偷偷地kan我们的网站数据。今天我就来教大家怎么不让它们来偷kan哦,我们一起...!

一、 使用PHP来保护网站

就像我们玩游戏时Ke以设置密码一样,我们也Ke以用PHP来设置一个密码,让那些讨厌的爬虫进不来。我们Ke以在服务器上用PHP来动态生成页面内容, 这样每次访问的时候,内容dou不同,爬虫就抓不到全部的数据啦!

然后我们还Ke以用PHP来判断访问我们网站的人是不是爬虫。比如我们Ke以设置一个名单, 换个赛道。 Ru果访问者在我们名单上,我们就不让它进来。

Shell脚本

尊嘟假嘟? 为了不让那些讨厌的爬虫偷kan我们的网站,我们需要想一些办法来阻止它们。下面有几个方法:

1. 我们Ke以检查访问者的User-Agent, 翻车了。 Ru果它不是我们想要的,我们就Ke以拒绝它。

2. 我们还Ke以设置一个环境变量,Ru果访问者没有这个变量,我们也不让它进来。


    // 获取UA信息
    $ua = $_SERVER;
    // 将恶意USER_AGENT存入数组
    $now_ua = array', 'CrawlDaddy', 'Java', 'Feedly', 'UniversalFeedParser', 'ApacheBench', 'Swiftbot', 'ZmEu', 'IndyLibrary', 'oBot', 'jaunty', 'YandexBot', 'AhrefsBot', 'MJ12bot', 'WinHttp', 'EasouSpider', 'HttpClient', 'MicrosoftURLControl', 'YYSpider', 'jaunty', 'Python-urllib', 'lightDeckReportsBot');
    // 禁止空USER_AGENT, dedecms等主流采集程序dou是空USER_AGENT,部分sql注入工具也是空USER_AGENT
    if  {
        header;
        die;
    } else {
        foreach  {
            // 判断是否是数组中存在的UA
            if ) {
                header;
                die;
            }
        }
    }
    

二、测试效果

测试效果就像是检查我们的游戏设置一样,我们要确保一切正常。我们Ke以用一些工具来模拟爬虫, CPU你。 kankan我们的设置是否有效。


    curl -I -A "bizhi.bcoderss.com" bizhi.bcoderss.com
    

三、 PHP 代码

PHP代码就像是我们的游戏规则,我们要设置好,才Neng保护好我们的网站。下面是一些PHP代码,Ke以帮助我们阻止爬虫,挽救一下。。


    // 禁止Scrapy等工具的抓取
    if ) {
        return 403;
    }
    // 禁止指定UA及UA为空的访问
    if  {
        return 403;
    }
    // 禁止非GET|HEAD|POST方式的抓取
    if $)) {
        return 403;
    }
    

四、 其他方法

除了PHP代码,我们还Ke以使用其他方法来保护我们的网站。比如我们Ke以设置IP黑名单, 操作一波... 把那些讨厌的爬虫的IP地址加入进去,它们就不Neng访问我们的网站了。

我们还Ke以修改网站的robots.txt文件,告诉爬虫哪些页面它们不Neng访问。

我们要保护好我们的网站,不让那些讨厌的爬虫来偷kan我们的数据哦!


提交需求或反馈

Demand feedback