好的,我知道这个问题已经被问了很多次,但我没有找到任何实际的答案。
考虑到SEO,构建多种语言的URL的最佳方法是什么?每种语言的一个顶级域名都是不必要的,所以我在考虑不同的子域名或子文件夹。在那种情况下,哪个更好 - en.mydomain.com或english.mydomain.com?如果是,例如。英文版比瑞典版更受欢迎,如何告诉搜索引擎他们实际上是同一页?
答案 0 :(得分:17)
Google网站管理员在这篇文章中回答了所有问题:Multi-regional and multilingual sites。
以下是相关性摘要:
网址结构
考虑使用网址结构,以便轻松地将网站的部分地理位置划分到不同的区域。下表概述了您的选择:
ccTLD(国家/地区代码顶级域名)
- 示例:
example.de
- 优点:
- 明确地理位置定位
- 服务器位置不相关
- 轻松分离网站
- 缺点:
- 贵(可能有限)
- 需要更多基础架构
- 严格的ccTLD要求(有时)
包含gTLDS(通用顶级域名)的子域名
- 示例:
de.example.com
- 优点:
- 易于设置
- 可以使用网站管理员工具进行地理位置定位
- 允许不同的服务器位置
- 轻松分离网站
- 缺点:
- 用户可能无法单独从网址识别地理位置定位(“de”语言或国家/地区?)
gTLD的子目录
- 示例:
example.com/de/
- 优点:
- 易于设置
- 可以使用网站管理员工具进行地理位置定位
- 低维护(同一主机)
- 缺点:
- 用户可能无法识别来自网址的地理位置定位
- 单一服务器位置
- 更难分离网站
网址参数
- 示例:
example.com?loc=de
- 优点:
- 不推荐。
- 缺点:
- 基于网址的细分很难
- 用户可能无法识别来自网址的地理位置定位
- 无法在网站站长工具中进行地理位置定位
重复的内容和国际网站
为不同地区和不同语言提供内容的网站有时会创建相同或相似但在不同网址上提供的内容。只要内容针对不同国家/地区的不同用户,这通常不是问题。虽然我们强烈建议您为每个不同的用户组提供唯一的内容,但我们知道这可能并非总是可行。通常不需要通过禁止robots.txt文件中的抓取或使用"noindex" robots meta tag来“隐藏”重复项。但是,如果您向不同网址上的相同用户提供相同的内容(例如,如果
example.de/
和example.com/de/
都为德国用户显示德语内容),您应该选择首选版本和redirect(或使用rel=canonical链接元素)。
答案 1 :(得分:1)
这一点特别引用了需要保持独立的URL。他们提供的例子是:
例如,以下.ca网址使用fr作为子域或子目录来清楚地指示法语内容:http://example.ca/fr/vélo-de-montagne.html和http:// fr.example。 CA /腭-DE-montagne.html。
他们还说:
可以在URL中翻译单词,或使用国际化域名(IDN)。确保在URL中使用UTF-8编码(事实上,我们建议尽可能使用UTF-8)并记住在链接时正确地转义URL。
这是通过CCTLD,搜索控制台中的地理位置设置,服务器位置和“其他信号”完成的。
如果您担心重复的内容,他们会说:
为不同地区和不同语言提供内容的网站有时会创建相同或相似但在不同网址上提供的内容。只要内容针对不同国家/地区的不同用户,这通常不是问题。虽然我们强烈建议您为每个不同的用户组提供唯一的内容,但我们知道这可能并非总是可行。
如果您在同一网站上重复使用相同的内容(但使用不同的语言:
通常无需通过在robots.txt文件中禁用抓取或使用“noindex”漫游器元标记来“隐藏”重复项。
但是!
但是,如果您向不同网址上的相同用户提供相同的内容(例如,如果example.de/和example.com/de/都为德国用户显示德语内容),您应该选择适当的版本和重定向(或使用rel = canonical link元素)。此外,您应遵循rel-alternate-hreflang指南,以确保向搜索者提供正确的语言或区域网址。
因此,请务必使用hreflang声明不同语言之间的关系。
以下示例:
<link rel="alternate" href="http://example.com" hreflang="en-us" />
您可以在很多地方使用此功能,包括页面标记,HTTP标头甚至站点地图。
以下是您可能会觉得有用的hreflang generator链接。
希望这有帮助。