如果你做的是中英双语(或多语言)网站,hreflang 标签就是告诉搜索引擎和 AI“这两页是同一内容的不同语言版本,别当成重复内容”的关键信号。配错或漏配,AI 可能误判、甚至把权重分散到错误语言版本。本文讲 hreflang 的作用、最常被踩的坑、AstroPaper 怎么配置,以及“到底要不要做多语言”的决策参考。
hreflang 是放在网页 <head> 或 HTTP 头里的标签,用来声明“这个页面面向哪种语言、哪个地区的用户”,格式如 hreflang="en"、hreflang="zh-CN"。
hreflang 解决什么问题
同一个内容有中英文两版时,对搜索引擎和 AI 来说,这两页长得像——标题类似、结构类似。如果没有 hreflang 明确说明“这是一对语言版本”,算法可能判定为重复内容,随机挑一个展示,甚至都不展示。结果是:你辛苦做的英文版,可能根本没被海外 AI 当回事。
hreflang 的作用,就是把这对页面“绑”起来:“en 版给英语用户,zh-CN 版给中文用户,它们是同一内容的不同语言”。这样 AI 能正确分发,不丢权重。
最常见的 4 个配置错误
- 只标了自己,没互相引用:hreflang 要求每个语言版都列出“全部版本 + 自己”,形成闭环。只在一边写,等于没写。
- 语言代码写错:用
zh而不是zh-CN,或用无关代码,AI 识别不了。 - 中英文放同一 URL 靠切换:没有真正的独立 URL,hreflang 无从绑定。多语言必须有各自独立地址。
- 和 canonical 冲突:canonical 指向自己语言版才对;若所有语言版 canonical 都指向英文,会乱。
AstroPaper 多语言配置
AstroPaper 支持通过 i18n 配置做多语言,但很多外贸站是“主站英文 + 单独中文站 / 子目录”的形式。无论哪种,要点是:
- 每个语言版有独立可访问 URL。
- 在
<head>用<link rel="alternate" hreflang="xx" href="...">互相声明。 - 配合正确的 canonical。
如果只是“主站英文、中文作辅助分发”,且技术资源有限,可以暂缓完整 hreflang,优先把英文做厚——这点参考 中英双语决策。但只要做了双语,hreflang 建议补齐。
多语言 vs 单语言,决策参考
- 目标市场单一语言(如纯欧美英文):单语言,做厚即可,不必折腾 hreflang。
- 真有中 + 英两类受众且都重要:做多语言 + 正确 hreflang。
- 小语种市场(日、西、德):仅在值得投入时单开该语言,不必全站多语。
Q:不做 hreflang,双语网站会怎样?
A:AI 和搜索引擎可能把中英文版当成重复内容,随机展示或都不展示,导致你重要的英文版没被海外 AI 正确收录和引用。hreflang 是避免这种误判的必要信号。
Q:hreflang 要每个语言版都写全吗?
A:要。每个语言版都要列出“所有语言版本(含自己)”,形成互相引用的闭环。只在一边写,等于配置不完整,效果大打折扣。
Q:AstroPaper 默认支持多语言和 hreflang 吗?
A:AstroPaper 支持 i18n 多语言框架,但 hreflang 的具体实现要看你的部署形态(子目录 / 子域 / 独立站)。核心是给每个语言版独立 URL 并互相声明 alternate 链接。
Q:语言代码写 zh 还是 zh-CN?
A:建议写具体区域代码如 zh-CN(简体中文)、en 或 en-US。写太笼统(如 zh)AI 可能识别不准,影响分发精度。
Q:只有英文站,需要 hreflang 吗?
A:不需要。hreflang 只在“同一内容多语言版本”时才用。单语言站把内容做厚、配好 canonical 即可。
Q:hreflang 配错了会不会比不配更糟?
A:有可能。错误的互相引用或代码会让算法更困惑。所以要么配对,要么先不做、等资源和精力到位再补齐,不要半吊子配置。