在宝塔面板通过伪静态屏蔽垃圾蜘蛛的方法

1
回复
42
查看
[ 复制链接 ]

109

主题

82

回帖

2358

积分

管理员

积分
2358
QQ
2025-8-10 12:31:42 显示全部楼层 阅读模式
相信每位站长都很烦那些垃圾蜘蛛和垃圾ip,总是使劲的爬自己的网站,以SemrushBot、SM-G900P等垃圾蜘蛛UA和某个特别熟悉的安卓UA(SM-G900P)为例,它们一天天爬个不停,把服务器cpu爬得通红都不放过。nzgabwvanjartdulkpwqvwqwzvkbs
下面以宝塔为例,教大家怎么简单的快速屏蔽垃圾的蜘蛛和垃圾ip。nzgabwvanjartdulkpwqvwqwzvkbs
屏蔽国外蜘蛛我们只需要分三步:不要乱来哦
1、打开宝塔的网站管理-点击你要屏蔽的网站的设置;viqrlopqkccuwjaocxhnbpcdiuphmcgmvrtrtbkzh
2、弹窗出来后点击伪静态;viqrlopqkccuwjaocxhnbpcdiuphmcgmvrtrtbkzh
3、复制下方的代码到里面第一行;lakufrxvravu
if ($http_user_agent ~* (SemrushBot|DotBot|HttpClient|MJ12bot|SemrushBot|Barkrowler|AhrefsBot|PetalBot|BLEXBot|SM-G900P)) {     return 403;}
哈哈

操作成功的图片如下:这是干扰码
局部截取_20250810_122913.png 局部截取_20250810_185305.png
哈哈

你好啊
你好啊
nzgabwvanjartdulkpwqvwqwzvkbs
哈哈

这是干扰码

不影响正文阅读

哈哈
收藏
送赞
分享

0

主题

32

回帖

75

积分

注册会员

积分
75
2026-1-3 18:19:56 显示全部楼层
好的,根据您提供的教程,我为您整理了一份清晰、步骤化的操作指南,并补充了关键说明和注意事项。

### **在宝塔面板通过伪静态屏蔽垃圾蜘蛛(UA)完整教程**

**核心原理**:通过Nginx的伪静态规则,匹配HTTP请求头中的`User-Agent`(用户代理标识),将已知的垃圾蜘蛛请求直接返回403禁止访问状态码,从而阻止其爬取。

---

#### **操作步骤**

1.  **登录宝塔面板**,进入【网站】管理页面。
2.  找到您需要防护的网站,点击其右侧的【设置】按钮。
3.  在弹出的网站设置窗口中,选择【伪静态】选项卡。
4.  在伪静态规则编辑框中,**将以下代码块复制并粘贴到现有规则的最顶部**(通常是 `location / {` 这一行之前)。

  1. # 屏蔽常见垃圾蜘蛛和恶意UA
  2. if ($http_user_agent ~* (SemrushBot|DotBot|HttpClient|MJ12bot|Barkrowler|AhrefsBot|PetalBot|BLEXBot|SM-G900P)) {
  3.     return 403;
  4. }
复制代码


5.  点击【保存】按钮,使规则立即生效。

---

#### **代码与操作详解**

*   **规则位置**:必须放在伪静态规则的最前面,确保优先判断。
*   **规则解释**:
    *   `if ($http_user_agent ~* (...))`:这是一个Nginx条件判断语句,`~*` 表示后续的正则表达式进行**不区分大小写**的匹配。
    *   `(SemrushBot|DotBot|...)`:这是一个正则表达式,使用竖线 `|` 分隔多个要屏蔽的`User-Agent`关键词。只要请求的UA字符串中包含任意一个关键词,条件就会成立。
    *   `{ return 403; }`:如果条件成立,则直接向客户端返回 **403 Forbidden**(禁止访问)状态码,请求被阻断。

*   **您提供的UA列表说明**:
    *   `SemrushBot`, `AhrefsBot`:常见SEO分析蜘蛛,流量巨大,若不需要可屏蔽。
    *   `DotBot`, `MJ12bot`, `Barkrowler`, `PetalBot`, `BLEXBot`:其他各类网络爬虫/蜘蛛。
    *   `HttpClient`:通常是一些Java程序发出的简单请求,可能是恶意扫描。
    *   `SM-G900P`:这是一个安卓手机的设备型号,常被用于一些恶意或异常的爬虫请求。

---

#### **重要补充与建议**

1.  **规则扩展**:您可以根据需要,自行增删 `|` 分隔的UA关键词。例如,增加 `Bytespider`(头条蜘蛛的测试版)、`Python-urllib`等。
   
  1. if ($http_user_agent ~* (SemrushBot|AhrefsBot|Bytespider|Python-urllib|HttpClient)) {
  2.         return 403;
  3.     }
复制代码

2.  **谨慎屏蔽**:在屏蔽前,请确认列表中不包含您需要的**正规搜索引擎蜘蛛**(如 `Baiduspider`, `Googlebot`, `Bingbot`, `Sogou`, `360Spider` 等),否则会影响网站收录。
3.  **效果验证**:
    *   规则保存后立即生效。
    *   您可以通过在浏览器中安装“User-Agent切换器”插件,将自己浏览器的UA模拟成 `SemrushBot` 来访问您的网站,测试是否返回403页面。
4.  **更强大的防护**:
    *   **IP屏蔽**:对于固定的垃圾IP,可以在宝塔的【网站设置】->【配置文件】中,在 `server{ }` 段内添加 `deny 1.2.3.4;` 来屏蔽。
    *   **频率限制**:对于CC攻击,可以使用宝塔的【流量限制】功能或Nginx的 `limit_req` 模块。
    *   **防火墙插件**:宝塔的【Nginx防火墙】或【Apache防火墙】插件提供了更直观的IP/UA屏蔽、CC防御、恶意扫描拦截等功能,管理更方便。

通过以上简单的伪静态设置,您可以有效拦截大部分已知的垃圾蜘蛛和恶意扫描,显著减轻服务器的不必要负载。
回复
使用道具
举报
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

English 简体中文 繁體中文 한국 사람 日本語 Deutsch русский بالعربية TÜRKÇE português คนไทย french
在线咨询
版权所有 © 2001-2026 Discuz! Team.
|网站地图