服务器配置

nginx屏蔽搜索引擎蜘蛛爬虫配置方法

我的站长站 2023-11-07 人阅读

1、屏蔽User-Agent

User-Agent是指浏览器或爬虫发送给服务器的HTTP请求头部信息之一,通过检查User-Agent来判断请求是否来自搜索引擎爬虫。

检查HTTP请求头部中是否包含bot、crawl或spider等字眼,如果包含则返回403错误码,拒绝该请求。

if ($http_user_agent ~*"bot|crawl|spider"){
    return 403;
}

2、屏蔽蜘蛛IP地址

拒绝IP地址为123.45.67.89的访问请求,并允许其他IP地址访问该页面。多个IP用空格隔开,搜索引擎的蜘蛛IP可以去网上找。

location /{    
    deny 123.45.67.89;    
    allow all;
}

3、屏蔽Referer

Referer是指从哪个页面链接过来的信息,在防止爬虫方面也有一定作用。检查HTTP请求头部中是否包含来自谷歌、雅虎或必应等搜索引擎的Referer,如果包含则返回403错误码,拒绝该请求。

if ($http_referer ~*(google|yahoo|bing)){
    return 403;
}

4、屏蔽Cookie

检查HTTP请求头部中是否包含名为crawlercookie的Cookie,如果包含则返回403错误码,拒绝该请求。

if ($http_cookie ~*"crawlercookie"){    
return 403;
}

5、屏蔽URL参数

检查请求URL中是否包含名为searchengine的参数,如果包含则返回403错误码,拒绝该请求。

if ($args ~*"searchengine"){    
    return 403;
}

6、限制访问频率

我们可以使用Nginx提供的limit_req模块来限制爬虫的访问频率。限制每个爬虫IP地址每秒钟只能访问5次,超过这个频率则会返回503错误码。

limit_req_zone $binary_remote_addr zone=bot:10m rate=5r/s;server {    
location /{        
    limit_req zone=bot burst=10 nodelay;   
 }}

7、限制访问速度

限制每个爬虫IP地址每秒钟只能下载10KB的数据,超过这个速度则会被限制。

location /{   
    limit_rate 10k;
}

8、屏蔽反向dai理

我们可以使用Nginx作为反向dai理服务器,屏蔽搜索引擎爬虫。将请求转发到后端服务器,并在检查User-Agent之后返回403错误码。

location /{    
    proxy_pass ;   
    proxy_set_header Host $host;    
    if ($http_user_agent ~*"bot|crawl|spider"){        
        return 403;   
    }
}

9、Robots.txt屏蔽

Robots.txt是一种文本文件,用于告诉搜索引擎哪些页面可以被抓取,哪些页面不能被抓取。将请求/robots.txt的页面指向/var/www/目录下的robots.txt文件,从而实现屏蔽搜索引擎爬虫的目的。

location /robots.txt {    
    alias /var/www/robots.txt;
}


相关专题
nginx
nginx
2022-11-28 19

Nginx是一个高性能的HTTP和反向代理web服务器,也是站长常见的网站环境之一.nginx凭借高性能低消耗近几年越来越多站长使用,学习好nginx也成为站长必备知识点.我的...

相关推荐
  • 搜索引擎
  • Nginx配置
  • nginx教程
  • 移动搜索引擎的未来

    随着移动端的崛起,我们也不得不提高移动端的重视。稍微大型点的站点都有自己的移动端:APP、wap网站等,但很多人都并未对移动端搜索引擎重视。下面我们来谈谈移动端搜索引擎优化是有多么重要吧。下面我就结合百度搜索主人架构师的一些讲话,结合百度站长平...

    网站优化 623 7年前
  • 即今日头条之后 微信也推出自家搜索引擎“微信搜一搜”

    我们都知道国内搜索引擎市场自从谷歌退出后,一直都是百度搜索一家独大。期间也有SOSO、360搜索、神马搜索等等一些兴起搜索引擎要挑战百度搜索,但大部分都没什么效果。从目前搜索引擎使用统计来看,百度搜索引擎还是占有80%份额,剩下的20%才是其他搜索引...

    网络新闻 504 4年前
  • 搜索引擎汇总,总有一款适合你
    搜索引擎汇总,总有一款适合你

    虽然目前百度在中国大陆是占有74%左右的占有率,但是放大到世界范围内,只不过区区1.1%,因为它搜索的答案并不是我们想要的答案,随着越来越多的搜索引擎加入,百度的市场份额还会被压缩,我们拭目以待。搜...

    在线工具 875 4年前
  • Nginx配置新手入门教程

    Nginx介绍Nginx是一个开源的高性能HTTP和反向代理服务器。它可以用于处理静态资源、负载均衡、反向代理和缓存等任务。Nginx被广泛用于构建高可用性、高性能的Web应用程序和网站。它具有低内存消耗、高并发能力和良好的稳定性,因此在互联网领域非常受...

    服务器配置 23 1年前
  • nginx宝塔面板上传文件环境配置方法

    在使用nginx系统的宝塔面板开发上传或下载文件功能时,需要首先要配置下载nginx或PHP的参数。否则上传下载大文件时,总是报错,上传小一点的文件,就不报错。修改nginx配置打开nginx管理界面,看到“性能调整”,主要修改连接超时、最大上传文件大小,其他的也可...

    宝塔面板 94 2年前
  • nginx禁止直接访问目录或文件配置方法

    nginx禁止直接访问目录或文件,禁止后可以避免服务器文件直接暴露,用户无法通过链接访问下载某些目录文件。禁止访问某些后缀文件ini、conf后缀可以自行添加,通常为一些配置文件。location ~ \.(ini|conf|txt)$ {deny all;}禁止访问目录location ^~ /te...

    服务器配置 132 1年前
  • nginx限制并发数和限制下载速度方法

    分享一篇最近我的站长站刚学的nginx限制并发数和限制下载速度方法,可以限制一个IP同一时间只允许发起一个连接,如果发起多个链接,会提示503。另外还支持限制的下载速度,用户在开始的下载500m之前,下载速度可以飙到最大,但是一旦下载的文件大小超过了500m,下...

    服务器配置 110 2年前
  • nginx新手入门-认识location匹配规则

    我们在配置nginx时,会看到默认的nginx配置规则内有很多的location,这些location每一段就代表一个规则,location的编写方法需要会一点正则,不会的可以继续看我的站长站为大家带来的location新手入门教程。完整nginx配置规则如下:server{listen 80;server_n...

    服务器配置 29 2年前
  • Nginx与Apache有什么区别?

    Apache & NginxApache,指的应该是 Apache 软件基金会下的一个项目——Apache HTTP Server Project;Nginx 同样也是一款开源的 HTTP 服务器软件(当然它也可以作为邮件代理服务器、通用的TCP 代理服务器)。HTTP 服务器本质上也是一种应用程序——它通常运...

    服务器配置 145 4年前
最新更新