如何通过 noindex 阻止网页被搜索引擎编入索引?

文章目录

    • [1 Meta Robots 标签(控制单页索引行为)](#1 Meta Robots 标签(控制单页索引行为))
    • [🌐 2 HTTP 头:`X-Robots-Tag` (服务器级控制)](#🌐 2 HTTP 头:X-Robots-Tag (服务器级控制))

近期文章

在一些网站中,通过robots.txt可以控制哪些站点资源或目录能被搜索引擎索引,但是随着站点页面增加,之前允许的索引页面常常不希望被索引,如果直接修改 robots.txt,影响会比较大,所以页面级的控制就很有必要。

原文链接:如何通过 noindex 阻止网页被搜索引擎编入索引?

前一篇有提到通过在站点根目录 robots.txt 文件中添加 Disallow 指令来阻止整站级别的某些资源被搜索引擎索引或不被索引,一文搞懂SEO优化之站点robots.txt。为了精细化控制被索引的页面,有时也需要通过noindex处理。

为让 noindex 生效,网页或资源需要不被 robots.txt 文件的规则屏蔽,并且必须能被访问。如果被 robots.txt 文件屏蔽或无法访问该网页,那么爬虫就永远看不到 noindex 规则,所以该网页可能仍会显示在搜索结果中,例如有其他网页链接到该网页。

有两种方式配置 noindex :一是作为 <meta> 标记,二是作为 HTTP 响应标头。这两种方法的效果相同,根据网站实际情况选择合适的方法即可。

1 Meta Robots 标签(控制单页索引行为)

在HTML的<head>中添加,精准控制单个页面是否被索引或跟踪链接。

支持的指令

指令 说明
all 无限制,为默认值
noindex 不在搜索结果中显示此网页、媒体或资源
nofollow 不追踪该网页上的链接
none 等同于 noindex, nofollow
nosnippet 不在搜索结果中显示该网页的摘要或视频预览
indexifembedded 如果网页通过 iframes 嵌入到其他网页,该网页内容也会被编入索引
max-snippet: [number] 最多只能使用 [number] 个字符作为搜索结果的文字摘要。为0时,不显示摘要。等同于 nosnippet;为-1时,不限制
max-image-preview: [setting] 设置网页的图片预览在搜索结果中的尺寸上限。为none时,不显示图片预览;为standard时,可能会显示默认图片预览;为large时,可能显示较大图片预览
max-video-preview: [number] 设置网页的视频预览在搜索结果中的最长秒数。为0时最多显示静态图;为-1时无显示;
notranslate 不在搜索结果中提供该网页的译文
noimageindex 不将该网页上的图片编入索引
unavailable_after: [date/time] 在指定日期/时间过后,不在搜索结果中显示该网页

HTML示例

html 复制代码
<!-- 禁止所有爬虫 -->
<meta name="robots" content="noindex, nofollow">
<!-- 仅禁止Google -->
<meta name="googlebot" content="noindex">

<!-- 阻止在搜索结果中显示摘要 -->
<meta name="robots" content="max-snippet:0">
<!-- 摘要最多显示20个字符 -->
<meta name="robots" content="max-snippet:20">
<!-- 不限制 -->
<meta name="robots" content="max-snippet:-1">

<!-- 不显示预览图 -->
<meta name="robots" content="max-image-preview:standard">

<!-- 2025-08-01之后不在结果中显示该网页 -->
<meta name="robots" content="unavailable_after: 2025-08-01">

🌐 2 HTTP 头:X-Robots-Tag (服务器级控制)

通过服务器配置HTTP响应头X-Robots-Tag,其值为 noindexnone动态控制索引行为 可用于非HTML文件(如PDF、视频文件或图片等)。

http 复制代码
HTTP/1.1 200 OK
(...)
X-Robots-Tag: noindex, nofollow
(...)

或指定爬虫引擎

http 复制代码
HTTP/1.1 200 OK
(...)
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow
(...)

服务端配置示例

以nginx配置为例,比如希望所有pdf文件禁止被索引:

nginx 复制代码
location ~* \.pdf$ {
  add_header X-Robots-Tag "noindex, nofollow";
}

✅ 优势:无需修改页面代码,适合批量管理或程序化生成的内容。

💎 根据场景选择方案

需求场景 推荐方案
整站/目录禁止抓取 robots.txt
精准控制单页索引/链接跟踪 Meta Robots 标签
动态文件或服务器级批量控制 X-Robots-Tag HTTP 头

实际业务中,建议同时使用 robots.txt + noindex 组合。

相关推荐
2601_9583529016 小时前
A-59U 仅 37mm 却集成 USB + 双波束?
前端·回声消除·语音模块·降噪处理·降噪消回音
德思特21 小时前
Robotaxi规模化加速,“信号难题”如何解决?
经验分享
泯泷21 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
野槐1 天前
前端项目优化(有了我,会发生...)
前端
统计学小王子1 天前
数学建模十万个为什么(一)
经验分享·数学建模
aa小小1 天前
【无标题】
前端
陕西企来客1 天前
企来客科技发布企业知识图谱GEO优化专项服务:从“信息曝光“升级到“实体置信度“
经验分享·ai
计算机魔术师1 天前
还在单线程跟 AI 聊天?Claude Code 并行多会话让你一个人干三个人的活
前端
志尊宝1 天前
Vue3 零基础每日笔记(038):亲手封装 useDebounceFn 与 useThrottleFn——高频事件的流量阀
前端·javascript·vue·html·vue3
JavaGuide1 天前
对标 MinIO!全新一代分布式文件系统正式发布
前端·后端