
关于
SEO hreflang 标签实施指南,用于多语言和多地区网站的国际化 SEO 优化。
name: seo-hreflang description: > Hreflang 和国际 SEO 审计、验证和生成。检测常见错误,验证语言/地区代码,并生成正确的 hreflang 实现。当用户提到"hreflang"、"i18n SEO"、"国际 SEO"、"多语言"、"多地区"或"语言标签"时使用。 risk: unknown source: "https://github.com/AgriciDaniel/claude-seo" date_added: "2026-03-21" user-invokable: true argument-hint: "[url]" allowed-tools:
- Read
- Grep
- Glob
- Bash
- WebFetch
Hreflang 与国际 SEO
何时使用
- 为多语言或多地区网站验证或生成 hreflang 时使用。
- 当用户提到国际 SEO、语言标签、x-default 或 hreflang 问题时使用。
- 审计 HTML、HTTP 头或站点地图实现中的语言替代版本时使用。
验证现有 hreflang 实现或为多语言和多地区网站生成正确的 hreflang 标签。支持 HTML、HTTP 头和 XML 站点地图实现。
验证检查
1. 自引用标签
- 每个页面必须包含指向自身的 hreflang 标签
- 自引用 URL 必须与页面的规范 URL 完全匹配
- 缺少自引用标签会导致 Google 忽略整个 hreflang 集合
2. 回链标签
- 如果页面 A 用 hreflang 链接到页面 B,页面 B 必须回链到页面 A
- 每个 hreflang 关系必须是双向的(A→B 和 B→A)
- 缺少回链标签会使两个页面的 hreflang 信号失效
- 检查所有语言版本是否相互引用(完全网状)
3. x-default 标签
- 必需:指定未匹配语言/地区的回退页面
- 通常指向语言选择器页面或英文版本
- 每组替代版本只能有一个 x-default
- 必须有来自所有其他语言版本的回链标签
4. 语言代码验证
- 必须使用 ISO 639-1 两字母代码(如
en、fr、de、ja) - 常见错误:
eng而非en(ISO 639-2,对 hreflang 无效)jp而非ja(日语的错误代码)zh无地区限定符(模糊;使用zh-Hans或zh-Hant)
5. 地区代码验证
- 可选地区限定符使用 ISO 3166-1 Alpha-2(如
en-US、en-GB、pt-BR) - 格式:
language-REGION(小写语言,大写地区) - 常见错误:
en-uk而非en-GB(UK 不是有效的 ISO 3166-1 代码)es-LA(拉丁美洲不是国家;使用具体国家)- 地区无语言前缀
6. 规范 URL 对齐
- hreflang 标签只能出现在规范 URL 上
- 如果页面有
rel=canonical指向其他地方,该页面上的 hreflang 会被忽略 - 规范 URL 和 hreflang URL 必须完全匹配(包括尾部斜杠)
- 非规范页面不应出现在任何 hreflang 集合中
7. 协议一致性
- hreflang 集合中的所有 URL 必须使用相同协议(HTTPS 或 HTTP)
- hreflang 集合中混用 HTTP/HTTPS 会导致验证失败
- HTTPS 迁移后,将所有 hreflang 标签更新为 HTTPS
8. 跨域支持
- hreflang 可跨不同域名工作(如 example.com 和 example.de)
- 跨域 hreflang 需要两个域名上都有回链标签
- 验证两个域名都已在 Google Search Console 中验证
- 跨域设置推荐使用基于站点地图的实现
常见错误
| 问题 | 严重程度 | 修复方法 |
|-------|----------|-----|
| 缺少自引用标签 | 严重 | 添加指向同一页面 URL 的 hreflang |
| 缺少回链标签(A→B 但无 B→A) | 严重 | 在所有替代版本上添加匹配的回链标签 |
| 缺少 x-default | 高 | 添加指向回退/选择器页面的 x-default |
| 无效语言代码(如 eng) | 高 | 使用 ISO 639-1 两字母代码 |
| 无效地区代码(如 en-uk) | 高 | 使用 ISO 3166-1 Alpha-2 代码 |
| 非规范 URL 上的 hreflang | 高 | 仅将 hreflang 移至规范 URL |
| URL 中 HTTP/HTTPS 不匹配 | 中 | 将所有 URL 标准化为 HTTPS |
| 尾部斜杠不一致 | 中 | 精确匹配规范 URL 格式 |
| HTML 和站点地图中都有 hreflang | 低 | 选择一种方法(大型网站推荐站点地图) |
| 需要时语言无地区限定 | 低 | 为地理定向内容添加地区限定符 |
实现方法
方法 1:HTML Link 标签
适用于:每页少于 50 个语言/地区变体的网站。
<link rel="alternate" hreflang="en-US" href="https://example.com/page" />
<link rel="alternate" hreflang="en-GB" href="https://example.co.uk/page" />
<link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />
放置在 <head> 部分。每个页面必须包含所有替代版本,包括自身。
方法 2:HTTP 头
适用于:非 HTML 文件(PDF、文档)。
Link: <https://example.com/page>; rel="alternate"; hreflang="en-US",
<https://example.com/fr/page>; rel="alter