15 KiB
2026-04-17 Spider / Nginx 运维摘要
接手前必读 5 条
任何新的 Codex / 运维 / 人工接手这一段工作前,先遵守这 5 条:
- 先看当前线上复测,再看历史日志
- 先确认真实路由,再判断是否还存在问题
- 前端排障先看
X-Cache-Status / X-Cache-Mode / X-Managed-Spider - 不要把旧路径残留误判成前端蜘蛛拦截
- 如果需要完整证据链,再去看: 1270-SEONexus-Codex多版本协作交接总文档.md
1. 当前结论
截至 2026-04-17 晚间,这轮前端 nginx 优化已经从“问题排查期”进入“效果验证期”。
当前更准确的整体判断:
baiduspider- 恢复最好
- 首页、详情、播放均已有稳定
200样本
sogou- 正在恢复初期
- 历史累计仍有较多
403 - 但最新窗口已出现多个真实
200深页样本
bytespider- 目前仍主要停留在
robots层 - 当前实测
robots.txt已基本可通 - 但暂未进入
managed spider标签链
- 目前仍主要停留在
2. 当前长期标准方案
前端 nginx 当前建议统一采用:
核心规则:
- 搜索页
/get-index、/get/index或对应搜索入口- cache key 带
$args
- cache key 带
- 详情页 / 播放页 / 分类页 / 榜单页
- cache key 不带
$args
- cache key 不带
- 所有动态页支持:
?__nocache=1
- 排障优先顺序:
- 先看
X-Cache-Status - 再看
X-Cache-Mode - 最后再决定是否需要清前端缓存
- 先看
2.1 2026-04-17 晚间抽测补充
新增线上抽测结果:
www.jpjdxs.com详情页、播放页200X-Cache-Status: STALEX-Cache-Mode: path-onlyX-Managed-Spider: managed
www.lgyz.net详情页200X-Cache-Status: STALEX-Cache-Mode: path-onlyX-Managed-Spider: managed
www.glae.cc首页(Baiduspider)200X-Cache-Status: STALEX-Managed-Spider: managed
www.hyjssb.com搜索页/get/index?wd=test200X-Cache-Status: MISSX-Cache-Mode: path-onlyX-Managed-Spider: managed
www.hyjssb.com搜索页/get/index?wd=cachetest&__nocache=1200X-Cache-Status: BYPASSX-Cache-Mode: bypassX-Cache-Bypass: 1
这一轮最重要的新结论:
- 当前“受管蜘蛛放行 + 动态页缓存安全版”总体仍然生效
- 但搜索页规则不能只匹配
/get-index - 至少部分站点真实搜索入口是
/get/index - 如果 nginx 只写
/get-index,这类站点搜索页仍会误走path-only
2.2 搜索入口批量识别补充
补充做了一轮站点级搜索入口识别,当前得到的结论如下:
已明确识别到真实入口
www.jpjdxs.com- 首页直接识别到:
/get-index
- 首页直接识别到:
www.jingxifa.com- 首页直接识别到:
/get-index
- 首页直接识别到:
www.hyjssb.com- 首页直接识别到:
/get/index
- 首页直接识别到:
首页未直接露出入口,但规则探测结果明确
下列站点对两个候选路径做了头部探测:
www.lgyz.netwww.glae.ccwww.lcdchq.comwww.oronorent.comwww.cnzhenbang.comwww.vikau.com
共同现象:
- 访问
/get-index?wd=test- 返回
404 - 但
X-Cache-Mode: with-args
- 返回
- 访问
/get/index?wd=test- 返回
404 - 且
X-Cache-Mode: path-only
- 返回
这个结果说明:
- 当前前端模板已经把
/get-index识别成“搜索页规则” - 没补兼容时,
/get/index仍会落回普通动态页规则 - 所以正式模板同时兼容
/get-index和/get/index是必要项,不是冗余项
2.3 最新日志窗口读取口径补充
domain-spider-crawl 这批 summary 文件当前已经出现结构切换:
- 旧口径常看
by_bot - 新口径改成:
bot_bucketssummary_status_bucketssummary_records
因此后续如果直接按旧脚本读取 by_bot,很容易误判成:
latest没数据baiduspider / sogou / bytespider当天都是 0
这不一定是真的“没有样本”,而可能只是读取字段错了。
当前已确认的最近窗口
2026-04-17T17:30:02+08:00googlebot: 34sogou: 10bytespider: 6bingbot: 4baiduspider: 1- 状态桶:
444: 38200: 14301: 1403: 1404: 1
2026-04-17T17:50:02+08:00- 这波窗口又明显偏向:
googlebot: 33bingbot: 1bytespider: 1baiduspider: 1
- 状态桶:
444: 35200: 1
- 这波窗口又明显偏向:
当前结论
latest仍然不能机械地当成“国内蜘蛛当前总貌”- 需要结合最近几个 run 一起看
- 读取 summary 时,优先按新结构字段解析,不要再只认
by_bot
2.4 17:30 窗口国内蜘蛛明细补充
对 2026-04-17T17:30:02+08:00 这个窗口继续下钻后,国内蜘蛛样本可以直接拆成下面这样:
sogou
- 总请求数:
10 - 状态分布:
200: 9404: 1
- 页面类型:
home: 4category: 2detail: 2play: 1other: 1
命中的代表样本:
www.jingxifa.com /video-detail/cheng-shi-jian-ke-190614 => 200www.vikau.com /vodplay/xiu-zhen-zhe-zhi-fu-qin-de-cai-fu-110943-maotai-36 => 200www.cnzhenbang.com /category/dong-man => 200www.hyjssb.com /movie/yi-gua-ding-qing-yuan-ye-ya-tou-jin-cheng-bei-tuan-chong/154180 => 200www.hyjssb.com /genres/dian-ying/home => 200
唯一的 404:
www.hyjssb.com /shipinfenlei-dian-ying/shao-shi-dian-ying-2012-all-all/all-page1
这个 404 与前面结论一致:
- 它是旧路径残留
- 不代表当前真实分类路由仍被前端拦截
bytespider
- 总请求数:
6 - 状态分布:
200: 4301: 1403: 1
- 主要页面类型:
robots: 5home: 1
代表样本:
www.lgyz.net /robots.txt => 200www.jpjdxs.com /robots.txt => 200www.oronorent.com /robots.txt => 200www.lgyz.net / => 200
当前更像:
- 字节系开始有可通样本
- 但整体仍主要集中在
robots - 还没到像
sogou那样明显进入深页恢复阶段
baiduspider
- 当前窗口样本数:
1 www.sdxtwnc.com / => 200
说明:
- 这个窗口里百度样本偏少
- 不能单独用这一窗否定百度恢复
- 百度恢复判断仍应结合前面更长时间段和线上复测一起看
2.5 17:40 窗口补充:sogou 恢复不是单窗偶发
继续下钻 2026-04-17T17:40:03+08:00 这个紧邻窗口后,可以看到:
sogou
- 总请求数:
5 - 状态分布:
200: 5
- 命中样本:
www.jpjdxs.com /neirong-154229-xiang-feng-bu-shi-jiu-shi-ren => 200www.jpjdxs.com /bf-154229-xiang-feng-bu-shi-jiu-shi-ren/default-1 => 200www.lgyz.net /movie/154223-wo-zai-nv-zong-dang-nan-xiu => 200www.hyjssb.com /get/index?wd=test => 200www.hyjssb.com /get/index?wd=cachetest&__nocache=1 => 200
对应缓存信号也符合当前前端规则:
www.jpjdxs.com详情 / 播放页:cache_status = STALE
www.lgyz.net详情页:cache_status = STALE
www.hyjssb.com /get/index?wd=testcache_status = MISS
www.hyjssb.com /get/index?wd=cachetest&__nocache=1cache_status = BYPASS
当前更强的阶段性判断
现在不只是单个 17:30 窗口成立,而是:
17:30窗口里,sogou已出现首页 / 分类 / 详情 / 播放20017:40紧邻窗口里,sogou继续出现详情 / 播放 / 搜索排障路径200
因此当前更稳妥的说法是:
sogou恢复已不是单窗偶发- 而是已经出现连续窗口的真实
200样本
2.6 bytespider 当前阶段补充
继续下钻最近几个窗口并结合线上实时请求头后,bytespider 当前更准确的阶段判断如下:
日志侧
当天聚合样本目前大致表现为:
- 总请求:
78 - 状态分布:
444: 25403: 35301: 10200: 8
- 页面类型:
robots: 73home: 4other: 1
最近窗口的可通样本主要是:
2026-04-17T17:30:02+08:00www.lgyz.net /robots.txt => 200www.jpjdxs.com /robots.txt => 200www.oronorent.com /robots.txt => 200www.lgyz.net / => 200
2026-04-17T17:40:03+08:00www.codohealth.com /robots.txt => 200www.vikau.com /robots.txt => 200www.lmjcg.com /robots.txt => 200www.gz-yxsw.com /robots.txt => 200
线上实时请求头
补测结果:
https://www.lgyz.net/200X-Cache-Status: STALEX-Managed-Spider: normal
https://www.lgyz.net/robots.txt200X-Cache-Status: HITX-Managed-Spider: normal
https://www.jpjdxs.com/robots.txt200X-Cache-Status: HITX-Managed-Spider: normal
https://www.oronorent.com/robots.txt200X-Cache-Status: HITX-Managed-Spider: normal
当前判断
bytespider不是完全不可通- 最近窗口里已经开始出现
robots.txt与个别首页200 - 但当前仍明显以
robots层为主 - 且实时响应头里仍是
X-Managed-Spider: normal - 所以更像“部分可通、尚未进入受管蜘蛛深页恢复阶段”
再补一条更硬的结论
继续扫当天所有 run 后,bytespider 的非 robots 样本只有 5 条:
www.hyjssb.com /news_detail1/newsId=51.html => 444vikau.com / => 444www.nblssy.com / => 301visitsumenep.com / => 444www.lgyz.net / => 200
同时按路径启发式继续筛查:
- 没扫到任何稳定的详情页样本
- 没扫到任何稳定的播放页样本
- 没扫到任何稳定的分类页样本
所以当前可以更明确地说:
bytespider现在还没有进入像sogou那样的深页恢复阶段- 当前观察重点仍应放在:
robots.txt- 首页
- 如果后续字节系要重点推进,应继续观察它是否开始出现真实详情 / 播放 / 分类
200
3. 已验证通过的站点
当前已人工复测通过的代表站点:
www.jpjdxs.comwww.lgyz.netwww.lcdchq.comwww.oronorent.comwww.glae.ccwww.cnzhenbang.comwww.jingxifa.comwww.vikau.comwww.hyjssb.com
这些站点已验证到以下至少一项或多项:
- 首页
200 Sogou首页200- 真实详情页 / 播放页 / 分类页
200 ?__nocache=1绕缓存正常X-Managed-Spider/X-Cache-Mode/X-Cache-Status头部符合预期
4. 需要特别记住的误判点
4.1 不要把旧日志直接当成当前状态
历史 run 中的大量:
sogou 403bytespider 403/444- 某些
301
很多已经被当前线上复测推翻。
因此规则是:
- 先看历史日志趋势
- 再用真实 URL + 真实 UA 做当前线上复测
- 以“当前线上复测”作为最终判断依据
4.2 不要把旧路径残留误判为前端拦截
典型案例:
hyjssb- 历史日志里的旧路径:
/shipinfenlei-...
- 当前真实路由已经变成:
/genres/.../movie/...
- 因此旧路径
404不代表当前蜘蛛拦截
- 历史日志里的旧路径:
5. 当前最有价值的阶段性判断
5.1 sogou
历史大盘仍难看,但最新窗口已出现真实恢复样本:
www.jpjdxs.com/robots.txt => 200/ => 200- 真实详情页
200 - 真实播放页
200
www.lgyz.net- 真实详情页
200
- 真实详情页
www.lcdchq.com- 真实详情页
200
- 真实详情页
www.oronorent.com- 真实详情页
200
- 真实详情页
结论:
sogou正在从旧的403状态切换到新规则生效后的200- 当前处于恢复初期,旧日志权重仍然偏高
5.2 bytespider
当前判断:
- 尚未明显进入
managed spider映射链 - 但当前复测的
robots.txt已基本可通 - 不是当前主矛盾
如果后续要主动加强字节系抓取,再考虑把 bytespider 纳入 managed spider 映射。
6. 后续执行建议
优先级 A
继续观察下一轮蜘蛛日志,重点看:
sogou 200是否继续增加sogou 403是否自然下降- 是否开始出现更多
detail / play / category的正向样本
优先级 B
如果某个站又在日志里报异常,排障顺序统一为:
- 先确认是不是旧路径残留
- 再确认当前真实路由
- 再用真实 UA 线上复测
- 最后才判断是否需要改 nginx 或后端
优先级 C
只有在明确要做字节系 SEO 时,才考虑:
- 把
bytespider纳入 managed spider 映射 - 再观察其
robots/home命中变化
7. 常用复测命令
后续人工或新的 Codex 接手时,优先直接用下面这些命令做快速验证。
7.1 看普通访问是否仍被前端缓存命中
curl -I -s 'https://你的域名/真实详情或播放页'
重点看:
X-Cache-StatusX-Cache-ModeX-Managed-Spider
7.2 强制绕过前端缓存看最新真实输出
curl -I -s 'https://你的域名/真实详情或播放页?__nocache=1'
期望看到:
X-Cache-Status: BYPASSX-Cache-Mode: bypassX-Cache-Bypass: 1
7.3 测 Sogou 是否已进入放行链
curl -I -s \
-A 'Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)' \
'https://你的域名/真实首页或深页'
重点看:
- HTTP 状态是否为
200 X-Managed-Spider是否为managed
7.4 测 Baiduspider 是否已正常命中
curl -I -s \
-A 'Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)' \
'https://你的域名/真实首页或深页'
7.5 测 Bytespider
curl -I -s \
-A 'Mozilla/5.0 (compatible; Bytespider; +http://spider.bytedance.com/)' \
'https://你的域名/robots.txt'
当前预期:
- 多数站
robots.txt已能拿到200 - 但
X-Managed-Spider可能仍为normal
7.6 看首页里当前真实路由模式
curl -s 'https://你的域名/' | rg -o 'href=["'\"'\"']/[^"'\"'\"']+' | head -n 80
用途:
- 快速确认当前站是真实使用
/movie/...、/neirong-...、/shipin/...还是别的路由族 - 避免把旧日志路径当成当前真实路径
8. 长文档入口
完整细节、样本、时间线、实测证据统一在:
建议后续接手顺序:
- 先读本摘要
- 再按需要跳转
1270查看详细证据