百度不依赖keywords和description排名,但严格校验robots、charset、viewport和canonical:robots需按页面意图精确设置且不可矛盾;charset必须为head中首个meta标签;viewport content禁用空格与全角符号;canonical须为绝对URL、无参数、服务端动态生成;description虽不参与排序,但语义匹配度影响抓取优先级。

百度不认 keywords,也不靠 description 排名,但会用 robots、charset、viewport 和 canonical 直接判定落地页是否合格——不合格就降权、延缓抓取、甚至拒收。
meta name="robots" 必须按页面意图精确控制
百度爬虫(Baiduspider)严格遵循 content 值,且不继承父路径规则。写错一个词就可能整页被屏蔽。
- 首页或内容页必须显式写
<meta name="robots" content="index, follow">,别依赖默认值——百度不保证默认行为始终一致 - 登录页、测试页、分页第2页以后(如
/list?page=2),建议用noindex, nofollow,否则会被识别为重复内容 - 禁止混用矛盾指令,例如
content="noindex, index"或"all, nofollow",百度会直接忽略整条标签 - 不要在模板里全局硬编码
noindex,CMS 输出时需动态判断当前路由是否应被索引
charset 和 viewport 的位置与写法决定解析成败
百度 Spider 解析 HTML 时,遇到乱码或移动端渲染失败,会直接中断内容提取,后续所有 meta 都失效。
-
<meta charset="utf-8">必须是<head>中第一个标签(或紧随<title>后),不能在任何<link>或<script>之后 -
<meta name="viewport" content="width=device-width, initial-scale=1">的content值中不能含空格或全角符号,例如"width = device-width"或"width=device-width,initial-scale=1"(中文逗号)都会导致移动端适配失效 - 如果页面存在 JS 动态注入 viewport,百度不会执行 JS,该设置无效;必须服务端直出
canonical 标签是解决百度重复收录的核心手段
百度对参数型 URL(如带 ?utm_source、&ref=、#section)非常敏感,不声明 canonical 就算内容一样,也会拆成多个低质页面。
立即学习“前端免费学习笔记(深入)”;
- 每个页面只允许一个
<link rel="canonical" href="https://example.com/page">,href 必须是绝对地址、协议完整、不含 hash 或 query 参数 - 不要指向 301 跳转后的 URL,百度不跟随跳转解析 canonical
- SPA 路由(如
/article/123→/article/123?from=feed)必须在服务端渲染时,根据原始 URL 动态生成 canonical,不能客户端拼接 - 检查是否 CMS 模板嵌套导致 canonical 被重复输出——百度只取第一个,其余被忽略,但可能触发风控模型误判
description 不影响排名,但影响百度“是否愿意重抓你”
百度虽不拿 meta name="description" 当排序因子,但它会比对 description 和首屏正文的语义匹配度。匹配过低,会降低该 URL 的抓取优先级。
- 每页唯一,长度控制在 155–160 字符(
str.length计数),超长必然截断,且移动端 SERP 实际只显示前 110–120 字 - 开头 60 字内必须自然包含用户最可能搜索的关键词组合,例如页面讲「Vite 插件开发」,就写「手把手实现 Vite 插件:从 hooks 到 Rollup 兼容,支持 HMR 和 TypeScript 类型推导」,而非「本页面介绍前端构建工具插件开发方法」
- 禁止 JS 注入:
document.querySelector('head').appendChild(...)百度不执行,这段 meta 等同于没写 - 避免全角标点、emoji、双引号未转义(
content="他说:"Hello""是非法 HTML),这些会导致整段 description 被丢弃
真正卡住百度落地页体验的,从来不是写了什么,而是哪一行写错了位置、哪个字符多加了空格、哪次 SSR 没把 canonical 绑定到当前路由——细节不闭环,再好的内容也进不了百度索引队列。



















