Robots.txt 配置教程?

目录

当你搭建好外贸网站的结构,按照《外贸网站结构规划与上线指南?》中的方法做好基础优化后,下一步就是让搜索引擎正确抓取你的页面。很多新手会忽略一个关键文件——robots.txt。实际上,一份错误的 robots.txt 配置可能导致整站不被收录,或者把敏感目录暴露给竞争者。这篇文章就是一份真实的 Robots.txt 配置教程,我会结合自己在多个外贸站点上的踩坑经验,手把手教你写出正确的配置。

为什么每个外贸站都需要一份自定义的 robots.txt?

搜索引擎的爬虫访问你的网站时,第一件事就是请求 /robots.txt。如果这个文件不存在,或者配置不当,爬虫可能会乱抓一气——比如抓取后台登录页、后台管理目录、重复的筛选参数页面,浪费抓取预算。在外贸网站中,图片资源、产品详情页、多语言版本都可能产生大量重复内容,通过 Robots.txt 配置教程 里学到的方法,可以引导爬虫优先抓取最重要的页面,同时屏蔽掉无价值的垃圾路径。

我在运营几个B2B独立站时,曾因为没处理好 /admin/cart 的屏蔽,导致Google的抓取配额被大量消耗,核心产品页反而迟迟不被收录。后来根据这套 Robots.txt 配置教程 修正后,收录率提升了30%以上。如果你也想让谷歌快速认可你的外贸站,请务必重视这个文件。

你需要准备什么?

在动手之前,先确认三件事:

  1. 网站根目录可访问 – robots.txt 必须放在网站根目录(如 https://yourdomain.com/robots.txt)。
  2. 了解自己的网站结构 – 哪些目录是公开的(如 /products/about),哪些是私密的(如 /admin/wp-admin/api)。
  3. 知道你要引导的爬虫 – 通常 User-agent: * 覆盖所有爬虫,但也可以针对 Googlebot、Bingbot 单独设置。

如果你是第一次接触,建议先读完《外贸网站结构规划与上线指南?》中关于URL规范的部分,这样可以更快理解目录的层级设计。更多内容请参考《外贸网站结构规划与上线指南?》。

核心指令讲解:allow、disallow、sitemap

1. Disallow – 禁止爬取

语法:Disallow: /path/

这条指令告诉爬虫不要访问指定路径。例如:

User-agent: *
Disallow: /admin/
Disallow: /temp/
Disallow: /private/

注意:路径区分大小写,/Admin//admin/ 是两个不同的路径。如果你的网站是 WordPress,通常需要屏蔽 /wp-admin//wp-includes/(但注意不要屏蔽 /wp-content/,因为CSS/JS/图片需要被加载)。

2. Allow – 允许爬取

有时你需要在一个被 Disallow 的目录中开放某个子路径,比如:

User-agent: Googlebot
Disallow: /images/
Allow: /images/logo.png

这表示除了 logo.png 外,其他图片都禁止爬取。在外贸网站中,我常用这个技巧来开放产品主图,同时屏蔽未优化的缩略图。

3. Sitemap – 提交站点地图

Sitemap: https://yourdomain.com/sitemap.xml

这条指令不是标准robots协议的一部分,但被主流搜索引擎支持。把网站地图的绝对地址写在这里,可以帮助爬虫更快找到所有可索引的页面。这是 Robots.txt 配置教程 中最容易被忽略但最实用的一个点。

实战:外贸网站常见的配置模板

下面是一个我实际在用的模版,适用于大多数外贸独立站(Shopify / WordPress / Magento 通用):

User-agent: *
Disallow: /admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /*?*
Disallow: /tag/
Disallow: /search/
Allow: /wp-admin/admin-ajax.php

Sitemap: https://www.yourdomain.com/sitemap.xml

解释:

  • /*?* 屏蔽所有带参数的动态URL(如 /product?color=red),避免重复内容。
  • 保留 admin-ajax.php 是因为 WordPress 需要它来维持某些功能正常,但不允许爬虫访问整个 /wp-admin/
  • 对于贸易站的博客部分,如需让搜索引擎抓取 /blog/ 下的文章,可以单独添加 Allow: /blog/ 在 Disallow 之前。

如果你网站的多语言版本使用子目录(如 /en//de/),建议不要 Disallow 语言目录,而是通过 hreflang 标签和站点地图来控制。这套 Robots.txt 配置教程 的核心原则是:只屏蔽你确定不想让爬虫看到的路径,不要过度屏蔽。

常见错误与排查方法

错误1:Disallow 写成了空值

Disallow: 后面什么都不写,表示允许爬取所有内容。很多人误以为空行就是禁止,结果导致全站被屏蔽。

正确写法:要禁止全站,写 Disallow: /

错误2:使用了通配符但语法不兼容

部分老版本爬虫(如古老的Googlebot)不支持 * 通配符,但现在主流都支持。不过建议用更明确的路径,比如用 Disallow: /*.pdf$ 来屏蔽所有PDF文件时,要确保你确实需要禁止搜索PDF。

错误3:忘记移除测试环境下的屏蔽

很多开发者在本地或测试服务器上会写 Disallow: /,上线前忘记删除,导致爬虫以为整个站点不可抓取。上线前一定要检查。

如何验证?

  • 直接访问 https://yourdomain.com/robots.txt 查看内容。
  • 使用 Google Search Console 的 robots.txt 测试工具,输入路径看是否被允许。
  • 也可以使用在线工具 robots.txt checker 进行批量测试。

进阶:针对不同爬虫的精细控制

如果你的外贸站主要面向欧美市场,Google 和 Bing 的抓取行为差异较大。我通常在 robots.txt 里这样写:

User-agent: Googlebot
Disallow: /temp/
Disallow: /preview/

User-agent: Bingbot
Disallow: /preview/

User-agent: *
Disallow: /admin/

这样可以让 Google 爬虫只屏蔽 /temp//preview/,而 Bing 额外多屏蔽一些路径。但注意,如果你不确定不同爬虫的差异,建议统一用 User-agent: *,避免配置混乱。

是否要屏蔽图片、CSS 和 JS?

以前有人建议屏蔽 CSS 和 JS 来节省带宽,但现在搜索引擎会通过渲染页面来判断移动适配性,屏蔽它们可能导致排名下降。不要屏蔽 /wp-content//assets/、图片目录等资源文件,除非这些资源本身就是无用的。对于图片,如果你有大量未经压缩的原始图,可以只 Allow 经过优化的副本。

配置完成后需要做什么?

1. 在 Google Search Console 提交并验证

进入 GSC → 左侧“设置” → “抓取” → “robots.txt”,点击“测试”确认语法正确。然后请求 Google 重新抓取你的 robots.txt。

2. 监控抓取日志

使用服务器日志或第三方工具(如 Screaming Frog)查看爬虫实际访问了哪些页面。如果你发现本应被屏蔽的路径仍有爬行,说明规则没生效或顺序有误。

3. 定期更新

网站改版、新增目录(如 /new-products/)或删除了旧模块后,及时调整 robots.txt。我建议每季度检查一次。

常见问题(FAQ)

Q: 更改 robots.txt 后需要多久生效?
A: 爬虫通常是第一次访问或缓存过期后重新读取,一般几小时内生效。你也可以在 GSC 中手动请求重新抓取。

Q: robots.txt 可以阻止黑客扫描后台吗?
A: 不能。robots.txt 是君子协议,恶意爬虫会忽略它。真正保护后台要靠强密码、IP白名单和防火墙。但配置 robots.txt 可以避免普通搜索用户通过搜索引擎直接搜到后台路径。

Q: 如果我的网站是 SPA(单页应用),还需要 robots.txt 吗?
A: 需要,而且更重要。SPA 有很多动态路由和哈希片段,建议用 Disallow 屏蔽 /#/ 等无意义路径,同时通过预渲染和站点地图引导爬虫。

行动建议:从今天开始修复你的 robots.txt

别把这件事拖到网站上线后。按照下面的步骤操作:

  1. 登录服务器,查看当前根目录下是否有 robots.txt,备份原有内容。
  2. 根据我上面提供的模版,删除其中不适用于你网站的路径,加上你独有的屏蔽目录。
  3. 在本地测试,确认语法正确。
  4. 上传并刷新,用 GSC 工具验证。
  5. 观察一周的抓取统计,确认核心页面被正常抓取,垃圾页面被拒绝。

如果你还没有完成网站整体的结构规划,请先返回阅读《外贸网站结构规划与上线指南?》,把地基打好。做好 robots.txt 只是第一步,后续还要配合规范化的 URL、清晰的导航、有效的内部链接才能真正让搜索引擎爱上你的站。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注