Files
SEONexus/docs/old-tmp-seo/12-第一批修正实施方案-2026-04-17.md
2026-04-17 21:09:06 +08:00

250 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 1281-SEONexus 第一批修正实施方案 - 2026-04-17
## 目的
这份文档用于把 `1280` 的“可落地修正设计”继续推进成可以直接进入实施评审的方案。
它回答的是:
1. 第一批具体怎么改
2. 先改哪些文件
3. 每一步改完怎么验证
4. 哪些线这一批绝对不要碰
## 本批次实施目标
只做一件事:
> 统一 `videoGpt1` 主线上模板、sitemap、RSS 的 host 输出口径,尽量先消除系统内部自带的 host 双口径冲突。
不把本批次目标扩散到:
- 深页兼容路由重构
- fallback 策略收紧
- 播放页 canonical 政策改向
## 预期收益
如果这一批实施正确,最可能看到的收益是:
1. 首页 `/|301` 继续下降
2. host 级 `301` 下降
3. 同一 base domain 下 `www` / 裸域混合抓取下降
4. `yagyjt.com``ningxiaowei.com``haotianhaiyuan.com` 这类站的 host 分裂减轻
## 本批次改动批次
### 批次 A统一模板与站内公开输出的 host 口径
建议优先级:`最高`
### 目标
确认 `videoGpt1` 主线上以下输出全部使用同一 host 口径:
- 首页 canonical
- 分类页 canonical
- 详情页 canonical
- 播放页 canonical
- `og:url`
- JSON-LD `url`
### 建议检查文件
- [videoGpt1/index/index.html](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/index/index.html:99)
- [videoGpt1/video/getCategory.html](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getCategory.html:34)
- [videoGpt1/video/getCategoryType.html](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getCategoryType.html:15)
- [videoGpt1/video/getVideoInfo.html](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getVideoInfo.html:39)
- [videoGpt1/video/getVideoPlayUrl.html](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getVideoPlayUrl.html:117)
### 实施建议
这一步如果发现这些文件已经统一,则不做逻辑变更,只做复核确认。
当前从只读审查来看,它们大方向已经都偏向:
- `https://{$DomainModel->d_domain}`
所以这一步更像:
- 明确模板层口径
- 作为后续 sitemap / RSS 对齐基线
## 批次 B把 sitemap 输出 host 对齐到模板口径
建议优先级:`最高`
### 目标
去掉 sitemap 生成里与模板层相冲突的 `https://www.` 硬编码。
### 建议改动文件
- [VideoSiteMapLogic.php](/www/wwwroot/VideoSource2/code/app/task/logic/VideoSiteMapLogic.php:203)
- [SiteMapLogic.php](/www/wwwroot/VideoSource2/code/app/task/logic/SiteMapLogic.php:158)
### 当前问题
这里大量在拼:
- `https://www.{$DomainModel->d_domain}`
### 建议改动方式
第一批不建议做复杂抽象。
只做最小改动:
-`https://www.{$DomainModel->d_domain}` 统一替换为与当前模板主输出一致的 host 口径
也就是优先对齐:
- `https://{$DomainModel->d_domain}`
### 这样做的原因
因为当前真正造成系统自冲突的,是:
- 模板一套
- sitemap 一套
先消掉这层内部打架,比引入新配置中心更稳。
## 批次 C把 RSS 输出 host 对齐到模板口径
建议优先级:`高`
### 建议改动文件
- [videoGpt1/rss/baidu.xml](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/rss/baidu.xml:6)
- [videoGpt1/rss/so.xml](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/rss/so.xml:12)
### 当前问题
这两个文件内部 host 口径并不完全一致:
- `baidu.xml``<link>` 已偏向非 `www`
- `baidu.xml` 的频道级 `<link>` / `<generator>` 仍有 `www`
- `so.xml` 仍在输出 `https://www.{$DomainModel->d_domain}...`
### 建议改动方式
第一批同样只做最小统一:
- 与模板 canonical 口径对齐
## 本批次不改的内容
### 1. 不改播放页 canonical 策略
原因:
- 它是策略问题,不是第一批最确定的问题
### 2. 不删历史兼容入口
原因:
- 当前高频旧入口仍真实存在
- 先删风险太高
### 3. 不收 fallback
原因:
- 当前 `404` 下降可能部分依赖 fallback
### 4. 不引入新的全局 host 配置中心
原因:
- 第一批目标是低副作用止损
- 不是立刻做体系重构
## 推荐实施顺序
### 第一步
模板层 host 输出复核:
- 首页
- 分类页
- 详情页
- 播放页
### 第二步
改 sitemap host 输出:
- `VideoSiteMapLogic`
- `SiteMapLogic`
### 第三步
改 RSS host 输出:
- `baidu.xml`
- `so.xml`
### 第四步
做页面级回归:
- 首页
- 分类页
- 详情页
- 播放页
- `sitemap_index.xml`
- `sitemap-videos-1.xml`
- RSS
## 建议的验证顺序
### 一、页面静态验证
确认:
- canonical host 一致
- `og:url` host 一致
- JSON-LD `url` 一致
- sitemap URL host 一致
- RSS URL host 一致
### 二、外网行为验证
抽查几个代表域名:
- `yagyjt.com`
- `www.ningxiaowei.com`
- `www.haotianhaiyuan.com`
- `ctshuhua.com`
- `sctyjz.com`
重点看:
- 首页是否仍多跳
- sitemap 返回内容里的 host 是否统一
### 三、日志验证
回看下一轮蜘蛛日志时,优先比较:
- `/|301`
- `home|301`
- `detail|301`
- `play|301`
- 同一 base domain 的 `www` / 裸域双命中是否下降
## 止损边界
如果本批次改动后出现以下任一情况,应暂停继续扩大:
1. `404` 明显回升
2. sitemap / RSS 出现不可访问
3. 首页或详情页 canonical 异常
4. `detail|301` / `play|301` 不降反升且幅度明显
## 给主 Codex 的一句话
> 第一批实施最适合做的,是一次“小范围 host 输出统一手术”先把模板、sitemap、RSS 的 host 口径对齐,先消除系统内部自带的冲突,再用日志看 `/|301` 和 host 分裂是否下降。