我使用此元标记使Google搜寻器知道我的网站有两种语言,如此处support.google所建议。
<link rel="alternate" hreflang="x-default" href="http://www.example.com" />
<link rel="alternate" hreflang="de" href="http://www.example.com/de" />
<link rel="alternate" hreflang="en" href="http://www.example.com/en" />
所以有时example.com
的内容与example.com/de
相同,有时example.com
的内容与example.com/en
相同。
我使用以下代码检测语言
const lang = (
getLangFromUrl(req.url) ||
getLangFromCookies(req.cookies) ||
getLangFromHeader(req.headers) ||
'de'
);
并且Google将example.com
和example.com/de
检测为重复页面。
能否请您告诉我应该如何正确完成?
答案 0 :(得分:2)
Google在以下链接中提到了此问题:support.google.com
如果您希望根据语言设置动态更改内容或重新引导用户,请注意Google可能找不到并抓取您所有的变体。这是因为Googlebot搜寻器通常起源于美国。另外,搜寻器发送HTTP请求,而未在请求标头中设置“接受语言”。
希望这对您有帮助
答案 1 :(得分:0)
处理具有多语言/多区域站点的重复页面
如果您作为跨区域站点的一部分以相同的语言在不同的URL上提供相似或重复的内容(例如,如果example.de/
和example.com/de/
都显示相似的德语内容),应该选择首选版本,并使用 rel = canonical 元素和 hreflang 标签来确保向搜索者提供了正确的语言或区域性网址。
您可以在此处找到有关合并重复URL的Google指南:https://support.google.com/webmasters/answer/139066?hl=en