结论先说:如果同一批URL在日志里出现两种大小写形式,而其中一种始终不被百度收录,优先把“大小写”当成URL规范问题处理,而不是内容质量问题。可行做法只有三条:保留并统一映射、改写链接源头、退出该路径体系。选择哪条,取决于这些URL是否已有外链、是否已被百度抓取过、以及服务端能否稳定返回301。
大小写差异在Linux服务器上是两个完全不同的路径,在Windows或部分容器环境里却可能指向同一文件。这正是“直觉相反”的来源:本地测试正常,线上百度抓取却失败。
要区分不同解释,可以看三组可核对的证据:
如果两种写法都返回200、内容一致,那问题更可能是重复内容与规范选择,而不是单纯的路径不存在。如果只有小写返回200、大写返回404,而站内链接大量使用大写,那百度抓到的就是一批死链,自然不收录。
保留适用于这些URL已经积累外链,或者已经在百度抓取记录里出现过、只是写法混乱的情况。核心动作是:选定一种大小写作为规范形式,把另一种全部301到规范形式。
例如假设站点规范形式统一为小写,那么 /Article/SEO-Guide 应301到 /article/seo-guide。这个动作的结果是:百度下次抓取大写路径时收到301,逐步把权重和抓取记录归并到小写路径。下一步要做的,是检查站内链接和站点地图是否也已改成小写,否则301会一直被动触发。
注意适用条件:301必须稳定返回,不能时而301时而404;如果服务器对大小写不敏感,本身无法区分两种路径,那么301规则可能无法按预期生效,此时应转向改写源头。
改写适用于站点规模不大、外链很少、或路径体系还能整体调整的情况。做法是把站内所有引用、站点地图、导航、分页、面包屑里的路径写法统一成一种,并确保模板不再输出另一种。
一个实际动作是:在发布流程里加一道检查,把生成URL的模板变量统一转成小写,再重新生成站点地图。结果会影响下一步判断——如果改写后百度抓取日志里大写路径逐渐减少,说明源头在收敛;如果大写路径仍频繁出现,说明还有外部引用或旧缓存模板在输出,需要继续排查。
改写不等于立刻收录。站点地图只帮助发现,不保证收录;robots.txt 的抓取限制也不等于可靠的索引移除。改写解决的是“百度该抓哪个地址”,不是“百度一定收录”。
退出适用于这些URL没有外链价值、大小写混乱来自历史系统且无法稳定重定向的情况。做法是停止对外输出这些路径,让它们自然返回410或404,同时把有效内容迁移到一套全新的、大小写统一的路径下。
退出的代价是:原有抓取记录和外链信号不会自动转移,除非你能把旧路径301到新路径。如果连301都做不到,那么退出意味着放弃这批地址的积累,只保留内容本身。这个取舍适合内容可重建、外链可忽略的场景,不适合已有大量外部引用的栏目。
无论选哪条,都要记住:请求量或抓取量归零,不能单独证明处理正确——它也可能是百度降低了整体抓取、robots.txt 拦截、或服务器临时故障造成的。要结合返回状态码和链接来源一起判断,再决定下一步是继续观察还是回退。