用于 SEO 的 Noindex 标签终极指南

已发表: 2022-02-14

防止某些页面出现在搜索结果中是您的索引策略不可或缺的一部分

控制站点索引的关键方法之一是元机器人标签或 x-robots-tags 中的 noindex 指令。

noindex 标记可用于告诉机器人,当您仍希望它们抓取给定页面并跟踪其上的链接时,不应将页面编入索引。

noindex 指令的错误实现可能会导致您的内容被有效地从 Google 的索引中删除。

确保不会发生这种情况——按照我的指南了解何时使用 noindex 标签、如何实现它以及要遵循的最佳实践。

内容隐藏
1什么是noindex标签?
1.1 Noindex 与 nofollow
2什么时候应该使用 noindex 标签?
3如何实现noindex标签
3.1在页面的 HTML 代码中插入 noindex 标签
3.1.1机器人元标记的优缺点
3.2将 noindex 标签添加到 HTTP 标头
3.2.1 Apache服务器
3.2.2 Nginx 服务器
3.2.3使用 HTTP 标头的优缺点
3.3如何检查 noindex 标签的实现?
4关于使用 noindex 标签的更多信息
5比较 noindex 标签、robots.txt 文件和规范标签
5.1 Robots.txt 文件
5.2规范标签
6总结

什么是 noindex 标签?

noindex 标记是一个 HTML 标记,用于控制机器人处理您网站上给定页面或文件的方式,并阻止它们为该页面或文件编制索引。

您可以通过在 robots 元标记中添加 noindex 指令来告诉搜索引擎不要索引页面- 只需将以下代码添加到 HTML 的 <head> 部分:

 <元名称=“机器人”内容=“noindex”>

或者,可以将 noindex 标记作为 x-robots-tag 添加到 HTTP 标头中

 x-机器人标签:noindex

当像 Googlebot 这样的搜索引擎机器人抓取带有 noindex 标签的页面时,它不会将其编入索引。 如果该页面之前已编入索引并且后来添加了标签,那么即使其他网站链接到该页面,Google 也会将其从搜索结果中删除。

一般来说,搜索引擎爬虫不需要遵循元指令,因为它们作为建议而不是它们必须遵守的规则。 一些搜索引擎爬虫可能会以不同的方式解释机器人元值。

但是,大多数搜索引擎爬虫(如 Googlebot)都遵守 noindex 指令。

Noindex 与 nofollow

Google支持其他元机器人指令——最受欢迎的指令包括 nofollow 和 follow。 但是,如果没有添加 robots 元标记,则跟随标记是默认设置,因此 Google 认为没有必要

nofollow 标签可防止搜索引擎抓取页面上的链接。 因此,该页面的排名信号不会传递给它链接到的页面。

可以单独使用 noindex 指令,但也可以与其他指令结合使用。 例如,如果您不希望搜索引擎机器人为页面编制索引并跟随其上的链接,则可以同时添加 noindex 和 nofollow 标签。

如果您实施了 noindex 标记,但您的网页仍然出现在搜索结果中,那么 Google 很可能只是在添加该标记后没有抓取该网页。 要请求 Google 重新抓取页面,您可以使用URL 检查工具。

什么时候应该使用 noindex 标签?

您应该使用 noindex 标签来防止页面被 Google 索引。

使不太重要的页面不可编入索引至关重要,因为 Google 没有足够的资源来抓取它在网络上找到的每个页面并将其编入索引。 同时,您需要确定应该索引的有价值的页面并优先考虑它们的优化。

让我们看看应该在哪些类型的页面上实现 noindex 标记以使其不可索引。

将 noindex 标签放在:

  • 缺货且将不再可用的产品页面。
  • 具有重复内容的页面,通常在电子商务网站上占主导地位。 还建议使用规范标签将搜索引擎指向页面的主要版本并防止重复内容问题。
  • 不应在搜索结果中访问的页面,例如暂存环境或受密码保护的页面。
  • 对搜索引擎有价值但对用户没有价值的页面——例如包含帮助机器人发现其他页面的链接的页面。

使页面不可索引应该作为完善的索引策略的一部分。

您永远不应该在有价值的页面上包含 noindex,例如:

  • 最受欢迎的产品页面,
  • 博客文章(除非过时),
  • 关于我和联系页面,
  • 描述您提供的服务的页面。

通常,切勿在您希望产生大量自然流量的页面上放置 noindex。

如何实现 noindex 标签

noindex 标记可以放置在站点的 HTML 代码或 HTTP 响应标头中。

一些 CMS 插件(如Yoast)可让您自动对您发布的页面进行无索引。

让我们一步一步来看看这两种主要的实现方法,并分析它们的优缺点。

将 noindex 标记插入页面的 HTML 代码

noindex 标记可以实现为页面 HTML 的 <head> 中的机器人元标记。

机器人元标记是用于控制网站的抓取和索引的代码。 用户看不到它们,但机器人会在抓取页面时找到它们。

下面是如何实现代码:

 <!DOCTYPE html>
<html>
<头部>
<元名称=“机器人”内容=“无索引”>
</head>
<正文>
</正文>
</html>

让我们澄清一下机器人元标记的结构。

在元标记内,有成对的属性和值:

 <元属性=”值”>

机器人元标记有两个属性:

  • name – 指定搜索引擎机器人的名称,
  • 内容 - 包含机器人指令。

根据您希望机器人执行的操作,这两个属性都需要不同的值。 此外,名称和内容属性都不区分大小写。

name 属性通常采用“robots”的值,表示指令针对所有机器人。

也可以使用特定机器人的名称,例如“googlebot”,但您遇到这种情况的频率要少得多。 如果您想处理不同的机器人,您需要为每个机器人创建单独的元标记。

请记住,搜索引擎有不同的爬虫用于不同的目的——查看谷歌的爬虫列表。

同时,内容属性包含机器人要遵循的指令。 在我们的例子中,它是“noindex”。 您可以在其中放置多个值并用逗号分隔属性。

机器人元标记的优缺点

HTML 方法比 HTTP 标头方法更容易实现和修改。 它也不需要您访问您的服务器。

然而,在你的 HTML 中实现 noindex 标记可能很耗时——你需要手动将它添加到你想要 noindex 的每个页面。

将 noindex 标记添加到 HTTP 标头

另一种解决方案是在 x-robots-tag 中指定 noindex 指令。

这是HTTP 标头响应的一个元素。 HTTP 标头用于服务器和客户端(浏览器或搜索引擎机器人)之间的通信。

您可以在 HTTP Web 服务器上对其进行配置。 根据您使用的服务器(如 Apache、Nginx 或其他服务器),代码看起来会略有不同。

下面是一个带有 x-robots-tag 的 HTTP 响应的示例:

 HTTP/1.1 200 正常
(……)
x-机器人标签:noindex
(……)

阿帕奇服务器

如果您有一个基于 Apache 的服务器并且想要对所有以“.pdf”结尾的文件不编制索引,则应该将指令添加到.htaccess 文件中。

这是示例代码:

 <文件 ~ "\.pdf$">
标头集 x-robots-tag "noindex"
</文件>

Nginx 服务器

如果您有基于Nginx 的服务器,请在.conf 文件中实施指令

 位置 ~* \.pdf$ {
add_header x-robots-tag "noindex";
}

使用 HTTP 标头的优缺点

在 HTTP 标头中使用 noindex 的一个显着优势是您可以在不是 HTML 页面的 Web 文档上使用它,例如 PDF 文件、视频或图像。 此外,此方法可让您定位页面的特定部分。

此外, x-robots-tag 支持使用正则表达式( RegEx )。 换句话说,您可以通过指定它们的共同点来定位不应索引的页面。 例如,您可以使用包含特定参数或符号的 URL 来定位页面。

另一方面,您需要访问您的服务器才能实现 x-robots 标记。

添加标签还需要技术技能,并且比将机器人元标签添加到网站的 HTML 更复杂。

如何检查 noindex 标签的实现?

如果您想检查是否实现了 noindex 或其他机器人元指令,您可以根据它们添加到页面的方式来进行。

因此,如果 noindex 标签被添加到页面的 HTML 中,您可以检查其源代码,而对于 HTTP 标头,您可以使用Chrome 中的 Inspect 选项 这些工具将向您显示在给定页面上识别了哪些指令。

其他选项包括将 URL 输入到 Google Search Console 的URL 检查工具或使用链接重定向跟踪扩展。

有关使用 noindex 标记的更多信息

以下是有关使用 noindex 标记的一些附加指南以及有关其特征的详细信息:

  1. 每当您的代码中不包含 noindex 时,默认选项是机器人可以索引您的页面
  2. 注意代码中的任何错误,例如在正确的位置包含逗号——如果语法错误,机器人将无法理解您的命令。
  3. 在您的 HTML 代码或 HTTP 响应标头中添加标签,但不能同时添加。 如果各个地方的指令相互矛盾,那么这样做可能会产生主要的负面影响。 在这种情况下, Googlebot 将选择限制索引的指令。
  4. 您可以使用 noimageindex 指令,它的工作方式类似于 noindex,但只会阻止给定页面上的图像被索引。
  5. 一段时间后,机器人开始将 noindex 视为 nofollow。 许多人使用 noindex 禁用页面索引,但将其与 follow 指令结合使用,以确保机器人仍然抓取页面上的链接。谷歌解释说,noindex, follow 指令最终将被视为 noindex, nofollow,因为在某些时候,它们会停止抓取 noindexed 页面上的链接。 结果,链接目标页面可能不会被索引,并且可能会降低排名信号,这可能会对它们的排名产生负面影响。
  6. 不要在 robots.txt 文件中使用 noindex。 尽管此规则和其他一些规则并未得到官方支持,但搜索引擎机器人遵循 robots.txt 文件中的 noindex 指令。 然而,截至 2019 年 9 月,谷歌宣布已于 2019 年 9 月停用处理 robots.txt 文件中不受支持和未发布规则的代码(例如 noindex)。

比较 noindex 标记、robots.txt 文件和规范标记

noindex 标签、 robots.txt 文件和规范标签是相关的——它们可用于控制页面的抓取和/或索引

但是,它们具有一些显着特征,使它们适用于不同的情况。

我们已经确定noindex 标签控制是否应该对网站上的特定页面进行索引,并且它们在页面级别上运行。

让我们看看它与 robots.txt 文件和规范标签的比较。

Robots.txt 文件

Robots.txt 文件可用于控制搜索引擎机器人如何在目录级别抓取您网站的某些部分。

具体来说,robots.txt 文件包含针对搜索引擎机器人的指令,重点关注“禁止”或“允许”它们的行为。 如果机器人遵循该指令,它们将不会抓取不允许的页面,并且这些页面不会被编入索引。

Robots.txt 指令被广泛用于节省网站的抓取预算。

在实现 noindex 标记和在 robots.txt 文件中设置规则时要小心。 要使 noindex 指令生效,给定页面需要可用于抓取,这意味着它不能被 robots.txt 文件阻止。

如果爬虫无法访问该页面,它将看不到 noindex 标签并且不会尊重它。 然后可以抓取该页面并出现在搜索结果中 - 例如,如果其他页面链接到它。

要对页面不编入索引,请允许在 robots.txt 中对其进行抓取,并使用 noindex 元标记来阻止其编入索引——Googlebot 将遵循 noindex 指令。

规范标签

规范标签是 HTML 元素,它通知搜索引擎几个相似页面中的哪个页面是主要版本并且应该被索引。 它们被放置在辅助页面上并指定规范 URL - 因此,这些辅助页面不应包含在索引中。

规范标签可能会限制非规范页面的索引,但Google 不会始终尊重这些标签 例如,如果 Google 发现更多指向另一个页面的链接,它可能会将其视为比指定的规范 URL 更重要,并将其视为主要版本。

此外,机器人只能在爬行期间发现规范标签。 与 robots.txt 文件不同,它们不能用于阻止网页被抓取。

规范标签和无索引标签之间的一个重要区别是规范化页面将排名信号合并到一个 URL 下。 同时,没有索引的页面不会传递排名信号,这对于内部链接至关重要——它们不会将排名信号传递给它们链接到的 URL。

包起来

使低质量页面不可索引是优化索引策略的 SEO 最佳实践之一——使用 noindex 元标记是使页面远离 Google 索引的最佳方法之一

使用该标签,您可以阻止不重要页面的索引,从而帮助搜索引擎爬虫专注于您最有价值的内容。

您网站的高效抓取和索引是充分利用有价值页面可以为您的网站带来的自然流量的关键。 要了解有关索引过程的更多信息,请确保您接下来阅读我们的索引 SEO 指南