修改Shopify robots.txt,先保存当前公开输出,再检查主题中是否已有robots.txt.liquid。新增这个模板会替换平台生成的robots输出;即使使用默认规则对象,最终文件也未必与未定制时完全相同。
这个区别来自Shopify现行开发文档:平台默认文件适合多数商店,使用Liquid对象比整份写死更易维护,但仍须比较实际渲染结果。不要把“按官方示例循环default_groups”理解为“除了我新增那一行,其余必然不变”。
先确定要解决的是哪一种问题
| 目的 | 应该检查什么 | 容易误用的做法 |
|---|---|---|
| 减少特定重复组合的抓取 | 实际URL集合、适用爬虫组及现有规则 | 看到参数就屏蔽全部参数页 |
| 让某页不出现在Google索引 | 可被读取的noindex或适当访问控制 | 只加Disallow就宣布已移出索引 |
| 保护非公开内容 | 登录、授权和服务器访问控制 | 把robots文件当保密锁 |
| 修重要页面无法访问 | 页面响应、密码设置、规则与网络问题 | 删除所有默认规则后直接上线 |
Google说明robots主要管理抓取,不保证URL不被索引,也不能强制所有爬虫遵守。被挡住的页面中的noindex通常无法被该爬虫读取;页面已索引与当前是否允许抓取是不同记录。

默认文件与default_groups,要以输出差异为准
Shopify帮助文档还提醒,输出默认规则组的自定义模板可能保留当前默认文件已经没有的规则,例如某些/search或/policies/限制。不能把博客里列出的规则表当成每家店当前生效的固定清单。
逐组核对User-agent、Allow/Disallow、路径和参数匹配范围、Sitemap等内容。一个针对某爬虫的组不能直接代表所有爬虫;Google与其他爬虫支持的指令也不完全相同。无需本次改动的规则不要凭猜测删除。
实际修改按这个顺序做
- 保存基线。记录域名、时间、当前/robots.txt完整响应、当前主题与模板原件。若使用代理或额外应用,也记下输出链路。
- 列出目标URL。明确要允许或限制哪类真实地址,并准备应该受影响、应该不受影响的样本。不要只写“屏蔽无用页面”。
- 改最小范围。按原厂当前的添加/移除规则方式修改Liquid。示例中的路径需要替换成经过判断的真实范围,不能把演示代码原样当成普遍SEO方案。
- 比较渲染输出。看模板产生的文件,与基线逐项比较;重点商品、集合、分页、语言路径和必要资源都要核。
- 发布后再请求。从公开域名取当前文件,确认内容和状态,并记录爬虫后续观察。保存成功不代表Google立刻重新抓取。
新增模板、主题切换和主题上传都需要复核。帮助文档指出,通过后台主题上传不会导入robots.txt.liquid;因此不能假定换主题后定制仍在,也不能把一个主题的源码截图当作当前文件。
想恢复默认,不是永久复制一份旧规则
原厂提供的恢复方法是删除自定义robots.txt.liquid,让平台重新提供默认文件。操作前保存当前定制,并确认这些限制是否仍有业务用途;恢复后重新取公开输出核对。
把某天的默认文件全文粘进去,会留下一个需要自己维护的静态副本。它可以在特定修复中被明确采用,但不能再宣称会自动获得后续平台规则更新。选择哪种方式,应由真实需求和持续维护能力决定。
规则改好后,用Shopify技术SEO自查清单继续核页面内容、索引控制和实际入口;地图访问问题另见sitemap排查。这些是不同问题,不能用robots单项通过代替整店SEO结论。