如何创建 Robots.txt 文件(以及为什么需要)

已发表: 2022-06-07

向人们解释 SEO 可能很困难,因为有很多小步骤一开始可能看起来不是很重要,但如果做得好,它们加起来会大大提高搜索排名。

一个容易被忽视的重要步骤是让搜索引擎爬虫知道要索引哪些页面 - 以及不应该索引哪些页面。 您可以使用 robots.txt 文件执行此操作。

在今天的博文中,我将准确解释如何创建 robots.txt 文件,这样您就可以将网站的这个基础部分摆好,并确保爬虫以您想要的方式与您的网站进行交互。

什么是 robots.txt 文件?

robots.txt 文件是一个简单的指令,它告诉搜索引擎抓取工具要抓取和索引您网站上的哪些页面。

它是机器人排除协议 (REP) 的一部分,该协议是一系列标准程序,用于管理搜索引擎机器人如何抓取网络、评估和索引网站内容,然后将该内容提供给用户。 此文件指定允许爬虫爬取的位置和不允许爬取的位置。 它还可以包含可以帮助爬​​虫更有效地爬取网站的信息。

REP 还包括“元机器人标签”,这是包含在页面 HTML 中的指令,其中包含有关网络爬虫应如何爬取和索引特定网页及其包含的图像或文件的特定说明。

Robots.txt 和 Meta Robots 标签有什么区别?

正如我所提到的,机器人排除协议还包括“元机器人标签”,它们是包含在页面 HTML 中的代码片段。 它们与 robots.txt 文件的不同之处在于它们为特定网页上的网络爬虫提供方向,不允许访问整个页面或页面中包含的特定文件,例如照片和视频。

相比之下,robots.txt 文件旨在防止网站的整个部分被索引,例如仅用于内部使用的子目录。 robots.txt 文件位于您网站的根域而不是特定页面上,并且指令的结构使其影响包含在它们引用的目录或子目录中的所有页面。

为什么我需要 Robots.txt 文件?

robots.txt 文件是一个非常重要的看似简单的文本文件。 没有它,网络爬虫将简单地索引他们找到的每个页面。

为什么这很重要?

对于初学者来说,爬取整个网站需要时间和资源。 所有这些都需要花钱,因此谷歌限制了它对网站的抓取量,特别是如果该网站非常大。 这被称为“抓取预算”。 抓取预算受到几个技术因素的限制,包括响应时间、低价值 URL 和遇到的错误数量。

另外,如果您允许搜索引擎不受限制地访问您的所有页面并让他们的爬虫索引它们,您最终可能会出现索引膨胀。 这意味着 Google 可能会对您不想出现在搜索结果中的不重要页面进行排名。 这些结果可能会给访问者带来糟糕的体验,他们甚至可能最终与您想要排名的页面竞争。

当您将 robots.txt 文件添加到您的站点或更新现有文件时,您可以减少抓取预算浪费并限制索引膨胀。

我在哪里可以找到我的 Robots.txt 文件?

有一个简单的方法可以查看您的网站是否有 robots.txt 文件:在互联网上查找。

只需输入任何站点的 URL 并在末尾添加“/robots.txt”即可。 例如: victoriousseo.com/robots.txt向您展示我们的。

通过输入您的站点 URL 并在末尾添加“/robots.txt”自行尝试。 您应该看到以下三件事之一:

  • 几行文本表示有效的 robots.txt 文件
  • 一个完全空白的页面,表明没有实际的 robots.txt 文件
  • 404 错误

如果您正在检查您的网站并获得后两个结果中的任何一个,您将需要创建一个 robots.txt 文件来帮助搜索引擎更好地了解他们应该将精力集中在哪里。

如何创建 Robots.txt 文件

robots.txt 文件包含搜索引擎机器人可以阅读和遵循的某些命令。 以下是您在创建 robots.txt 文件时将使用的一些术语。

常见的 Robots.txt 术语要知道

用户代理:用户代理是负责为最终用户检索和呈现 Web 内容的任何软件。 虽然网络浏览器、媒体播放器和插件都可以被视为用户代理的示例,但在 robots.txt 文件的上下文中,用户代理是一种搜索引擎爬虫或爬虫(例如 Googlebot),它可以抓取和索引你的网页。

允许:当包含在 robots.txt 文件中时,此命令允许用户代理抓取它后面的任何页面。 例如,如果命令显示“允许:/”,这意味着任何网络爬虫都可以访问“http://www.example.com/”中斜线后面的任何页面。 您不需要为要抓取的所有内容添加此内容,因为 robots.txt 不允许的任何内容都是隐式允许的。 相反,使用它来允许访问位于不允许路径中的子目录。 例如,WordPress 站点通常对 /wp-admin/ 文件夹有一个禁止指令,这反过来又要求它们添加一个允许指令,以允许爬虫访问 /wp-admin/admin-ajax.php 而无需访问目录中的任何其他内容主文件夹。

Disallow:此命令禁止特定用户代理爬取指定文件夹后面的页面。 例如,如果命令显示“Disallow: /blog/”,这意味着用户代理可能不会抓取任何包含 /blog/ 子目录的 URL,这会将整个博客排除在搜索之外。 你可能永远不想这样做,但你可以。 这就是为什么在您考虑对 robots.txt 文件进行更改时考虑使用 disallow 指令的含义非常重要的原因。

Crawl-delay:虽然这个命令被认为是非官方的,但它的设计目的是防止网络爬虫潜在地用请求压倒服务器。 它通常在请求过多可能导致服务器问题的网站上实施。 一些搜索引擎支持它,但谷歌不支持。 您可以通过打开 Google 搜索控制台、导航到您住宿的“抓取速度设置”页面并在那里调整滑块来调整 Google 的抓取速度。 这仅在 Google 认为它不是最佳的情况下才有效。 如果您认为它不是最理想的并且 Google 不同意,您可能需要提出特殊要求以对其进行调整。 这是因为 Google 更希望您允许他们优化您网站的抓取速度。

XML 站点地图:该指令完全符合您的猜测:告诉网络爬虫您的 XML 站点地图在哪里。 它应该类似于:“站点地图:http://www.example.com/sitemap.xml。” 您可以在此处了解有关站点地图最佳实践的更多信息。

创建 Robots.txt 的分步说明

要创建自己的 robots.txt 文件,您需要使用简单的文本编辑器,例如记事本或 TextEdit。 重要的是不要使用文字处理器,因为它们通常以专有形式保存文件,并且可能会在文件中添加特殊字符。

为简单起见,我们将使用“www.example.com”。

我们将从设置用户代理参数开始。 在第一行,输入:

用户代理: *

星号表示允许所有网络爬虫访问您的网站。

一些网站会使用允许指令来表示允许机器人爬行,但这是不必要的。 您没有禁止的网站的任何部分都是隐式允许的。

接下来,我们将输入 disallow 参数。 点击“return”两次以在用户代理行之后插入一个中断,然后键入:

不允许: /

因为我们没有在它之后输入任何命令,这意味着网络爬虫可以访问您网站上的每个页面。

如果要阻止对某些内容的访问,可以在 disallow 命令后添加目录。 我们的 robots.txt 文件有以下两个禁止命令:

禁止:/wp/wp-admin/

不允许: /*?*

第一个确保我们的 WordPress 管理页面(我们在其中编辑本文之类的内容)不会被抓取。 这些是我们不希望在搜索中排名的页面,而且尝试抓取它们也会浪费 Google 的时间,因为它们受密码保护。 第二个可防止抓取包含问号的 URL,例如博客搜索结果页面。

完成命令后,链接到您的站点地图。 虽然这一步在技术上不是必需的,但它是推荐的最佳做法,因为它将网络蜘蛛指向您网站上最重要的页面,并使您的网站架构清晰。 插入另一个换行符后,键入:

站点地图:http://www.example.com/sitemap.xml

现在您的网络开发人员可以将您的文件上传到您的网站。

在 WordPress 中创建 Robots.txt 文件

如果您对 WordPress 具有管理员访问权限,则可以使用 Yoast SEO 插件或 AIOSEO 修改您的 robots.txt 文件。 或者,您的 Web 开发人员可以使用 FTP 或 SFTP 客户端连接到您的 WordPress 站点并访问根目录。

请勿将 robots.txt 文件移动到根目录以外的任何位置。 虽然一些消息来源建议将其放在子目录或子域中,但理想情况下,它应该位于您的根域中: www.example.com/robots.txt。

如何测试您的 Robots.txt 文件

现在您已经创建了 robots.txt 文件,是时候对其进行测试了。 幸运的是,Google 提供了一个 robots.txt 测试器作为 Google Search Console 的一部分,从而简化了这一过程。

打开站点的测试器后,您会看到突出显示的所有语法警告和逻辑错误。

机器人txt测试仪

要测试特定 Googlebot 如何“看到”您的页面,请在页面底部的文本框中输入您网站的 URL,然后从右侧下拉列表中的各种 Googlebot 中进行选择。 点击“测试”将模拟您选择的机器人的行为,并显示是否有任何指令阻止 Googlebot 访问该页面。

googlebot robots txt 测试器

Robots.txt 的缺点

Robots.txt 文件非常有用,但它们也有其局限性。

Robots.txt 文件不应用于保护或隐藏您网站的某些部分(这样做可能违反《数据保护法》)。 还记得我建议您搜索自己的 robots.txt 文件吗? 这意味着任何人都可以访问它,而不仅仅是您。 如果有您需要保护的信息,最好的方法是使用密码保护特定页面或文档。

此外,您的 robots.txt 文件指令只是请求。 您可以期望 Googlebot 和其他合法抓取工具遵守您的指令,但其他机器人可能会简单地忽略它们。

最后,即使您请求爬虫不索引特定的 URL,它们也不是不可见的。 其他网站可能会链接到它们。 如果您不希望网站上的某些信息可供公众查看,则应使用密码对其进行保护。 如果您想确定它不会被索引,请考虑在页面上包含一个 noindex 标记。

了解有关技术 SEO 的更多信息:下载我们的清单

想了解更多关于 SEO 的信息,包括如何将网站的 SEO 掌握在自己手中的分步说明? 下载我们的 2022 年 SEO 清单以获取全面的待办事项清单,其中包括可帮助您提高搜索排名并为您的网站带来更多自然流量的宝贵资源。

2022 年搜索引擎优化清单

搜索引擎优化清单和规划工具

您准备好在您的 SEO 上大放异彩了吗? 获取交互式清单和规划工具并开始吧!