Skip to content

一、搜索引擎工作原理

1️⃣ Crawling(抓取)

✔ 本质

搜索引擎通过爬虫(如 Googlebot)不断访问网页,构建“候选页面池”。

✔ robots.txt 的优先级

👉 实际规则:

优先级规则
1robots.txt(是否允许抓取)
2meta robots(页面级控制)
3HTTP Header(X-Robots-Tag)

✔ robots.txt 常见误区

❌ 错误理解:

Disallow = 页面不会被收录

✅ 实际:

  • Disallow = 不抓取
  • 但仍可能被索引(通过外链发现)

👉 想完全不收录:

html
<meta name="robots" content="noindex" />

✔ 抓取频率(Crawl Budget)

👉 每个网站都有“抓取预算”

影响因素:

  • 网站权重(Authority)
  • 更新频率
  • 页面数量
  • 服务器响应速度

✔ 如何观察?

使用 Google Search Console:

路径:

  • Settings → Crawl stats

你能看到:

  • 每天抓取次数
  • 响应时间
  • 抓取文件类型

🔥 高级技巧

👉 提升抓取效率:

  • 合理内链(重要!)
  • 提供 sitemap.xml
  • 避免死链
  • SSR 提供完整 HTML

二、Indexing(索引)

✔ 核心认知

搜索引擎不直接“看网页”,而是“看索引库”

✔ “收录 ≠ 排名”(必须会说)

阶段含义
收录(Indexed)页面进入数据库
排名(Ranking)是否展示 + 排第几

👉 举例:

  • 页面被收录 ✔
  • 但排在第 100 页 ❌

✔ 影响索引的关键因素

1. 内容质量

  • 是否原创
  • 是否有价值

2. 页面可解析性

❗ CSR 问题:

html
<div id="root"></div>

👉 对爬虫来说几乎是“空页面”

3. 去重机制(非常关键)

搜索引擎会自动判断:

  • 内容是否重复
  • 是否需要合并权重

✔ canonical 的真正作用

👉 告诉搜索引擎:

哪个 URL 才是“主版本”

html
<link rel="canonical" href="https://example.com/page" />

🔥 高级理解

canonical ≠ 强制指令 👉 是“建议”,搜索引擎可以不听

三、Ranking(排名)

✔ 排名核心三要素

1️⃣ 关键词相关性(Relevance)

👉 搜索引擎在做什么?

“这个页面是不是在回答用户问题?”

匹配维度:

  • title
  • h1
  • 正文
  • 语义(NLP)

2️⃣ 权重(Authority)

👉 来源:

  • 外链(Backlinks)
  • 网站历史
  • 品牌信任度

👉 概念:

页面权重通过链接传递

✔ 示例:

A页面(权重高) → B页面

👉 B 页面权重会提升

✔ 内链优化(实战重点)

  • 首页 → 核心页面
  • 文章之间互链
  • 避免孤岛页面

🔥 高级点:权重分散

A → B
A → C

👉 权重被“分流”

四、语义化 HTML 的 SEO 价值(深入版)

✔ 为什么语义化很重要?

因为爬虫不会“视觉理解”,只能靠结构判断。

✔ 推荐结构

html
<main>
  <article>
    <h1>文章标题</h1>
    <section>内容</section>
  </article>
  <aside>推荐内容</aside>
</main>

✔ 标签语义作用

标签SEO作用
<main>主内容
<article>独立内容块
<nav>导航结构
<aside>辅助内容

✔ 对爬虫的价值

👉 帮助它快速判断:

  • 哪是正文
  • 哪是导航
  • 哪是广告

❗ 常见错误

html
<div class="title">xxx</div>

👉 ❌ SEO 无法识别重要性

五、Heading 体系

✔ 标准规则

  • 1 个页面 → 只能有一个 <h1>
  • 层级递进:
h1 → h2 → h3

✔ SEO 本质

👉 Heading 是“内容结构树”

✔ 最佳实践

html
<h1>Next.js SEO 完整指南</h1>
<h2>什么是 SEO</h2>
<h3>定义</h3>

❗ 常见坑

  • 用样式代替语义 ❌
  • 多个 h1 ❌(现在搜索引擎容忍,但不推荐)

六、Sitemap.xml(站点地图)

✔ 本质

告诉搜索引擎:我有哪些页面

✔ 示例

xml
<url>
  <loc>https://example.com/blog</loc>
  <lastmod>2026-03-01</lastmod>
  <priority>0.8</priority>
</url>

✔ 字段解释

字段作用
loc页面地址
lastmod更新时间
priority优先级

❗ 重要认知

👉 priority ≠ 排名权重 只是“抓取建议”

✔ 实战建议

  • 自动生成(Next.js / CMS)
  • 更新时自动刷新

七、Canonical(防重复核心机制)

✔ 为什么需要?

避免:

example.com
example.com?ref=ads
example.com?page=1

👉 被当成多个页面 → 权重分散 ❌

✔ 标准写法

html
<link rel="canonical" href="https://example.com" />

✔ 作用总结

  • 合并权重
  • 避免重复内容
  • 提高排名稳定性

🔥 高级场景

✔ 分页 SEO

?page=1
?page=2

👉 canonical 指向:

  • 第一页 或 自己(看策略)

✔ 多语言站点

结合:

  • canonical
  • hreflang

八、 SEO 工作原理是什么?

  • 搜索引擎主要分为抓取、索引、排名三个阶段。
  • 抓取阶段受 robots.txt 和 crawl budget 控制;
  • 索引阶段核心是内容质量和去重机制(canonical);
  • 排名阶段由关键词相关性和权重(link juice)决定。
  • 在前端层面,我主要通过 SSR、语义化 HTML、heading 结构、sitemap 和 canonical 来优化技术 SEO。