多语种网站的搜索引擎优化:语言特定的结果,而不更改URL?

时间:2012-04-20 11:49:04

标签: seo multilingual

我的网站有两种语言:英语和瑞典语。

我想要的是,如果有人在瑞典搜索该网站,它应该显示瑞典的结果。也就是说,我希望谷歌在瑞典(google.se)抓取该网站的瑞典语版本。对于任何其他地方,我希望抓取英文版本。

我读了以下内容:
http://googlewebmastercentral.blogspot.se/2010/03/working-with-multilingual-websites.html

它说我应该有两个单独的网页。有没有办法让我不需要更改网址中的任何内容?

我的意思是,如果google.se上的任何人搜索example.com,它应该在其他任何地方显示瑞典语结果,英语。

3 个答案:

答案 0 :(得分:52)

这是我的full answer about how you should structure your URLs for multilingual sites

有许多可接受的方法来构建您的网站以进行搜索引擎优化和国际化。每个都有优点和缺点。

顶级域名

在多个顶级国家/地区域中购买相同的域名,例如example.comexample.esexample.de

<强>优点

  • Google完全支持。您可以将这些网站添加到Google Webmaster Tools,其中有选项可以告诉Google他们的定位方式。
  • 通常倾向于喜欢在国家/地区顶级域名中发布内容的用户
  • 域名本身可以本地化。许多国际用户可能对英语单词或英语发声域名反应不佳。这对于不使用拉丁字母的语言尤其重要。
  • 支持按国家/地区进行本地化。您可以将example.co.ukexample.com.au等单独的网站定位到不同国家/地区的受众群体。网站可能有重复的内容,略有拼写差异,仍然排名很好。事实上,同一语言的多个本地化网站可能比该语言中的单个网站排名更好。
  • 通过将DNS指向目标国家/地区的Web服务器,可以对托管进行本地化。

<强>缺点

  • 购买许多域名既费钱又费时。特别是如果你必须处理擅自占地者。
  • Cookie不能跨多个区域设置共享,这意味着用户必须分别登录到每个站点。
  • 由于许多语言都有多个国家/地区,并且国家/地区顶级域名(TLD)可能不是语言代码,因此不能仅按语言进行本地化。即使在TLD与es等语言代码匹配的情况下,搜索引擎也可能认为该网站仅适用于来自西班牙的用户,而不适用于所有西班牙语用户。

子域

购买单个域名,并使用en.example.comes.example.com

等子域名

<强>优点

  • 完全由Google支持。
  • 支持按国家按语言进行本地化。
  • 通过将DNS指向位于用户附近的Web服务器,可以对托管进行本地化。
  • 与购买多个域相比,实施起来既简单又便宜。
  • 可以在所有区域设置中共享Cookie,从而实现单点登录,从而获得更加无缝的用户体验。

<强>缺点

  • 没有机会本地化域名本身
  • 与顶级域名相比,用户可能看起来不那么本地化了。

子目录

购买单个域名,并使用example.com/en/example.com/es/

等子目录

优点和缺点

  • 与子域名相同,只是有一个DNS条目可以阻止您在不同地区的多个国家/地区托管您的网站。

推荐

的技术
  • 文件名:使用不同的文件名,例如index_en.htmlindex_de.html。 Google不完全支持此技术。例如,无法在网站管理员工具中设置定位。
  • 网址参数:使用lang=en等网址参数。建议不要使用不同的文件名。
  • 接受语言标题:根据Accept-Language标题自动切换语言。
    • 许多用户没有正确设置此标头。对于出国旅行的用户来说尤其如此,他们可能正在使用朋友的电脑或网吧。对于国际用户而言,安装英文网络浏览器并且知道足够的英语可以使用,但更喜欢使用其他语言的内容,这也是正确的。
    • Google just announced that Googlebot will send the Accept-Language header and crawl from different geographic locations。但是,Google仍建议您为不同语言的内容提供单独的网址。
    • 您可以使用Accept-Language标头建议用户可能更喜欢该网站的其他版本,方法是在他们访问的网站与Accept-Language标题不匹配时显示消息。
  • 地理IP地址:根据地理位置的IP地址自动切换语言。

页面标记

支持多种语言时,您应该清楚地标记语言元数据。

使用html标记中的lang属性:

<html lang="en">

将rel替代链接用于suggested by Google以外的其他语言的同一页面:

<link rel="alternate" hreflang="es" href="http://www.example.com/" />
<link rel="alternate" hreflang="es-ES" href="http://es-es.example.com/" />
<link rel="alternate" hreflang="es-MX" href="http://es-mx.example.com/" /> 
<link rel="alternate" hreflang="en" href="http://en.example.com/" />

或者,this information can be put into sitemap files

告诉Google关于您的网站

您应该将网站的每种语言(或区域设置)添加到Google Webmaster Tools。这可以针对顶级域,子域或子目录来完成。

如果您的网站是按国家/地区定位的,则应使用网站管理员工具设置网站定位。导航到&#34;配置&#34; - &GT; &#34;设置&#34; - &GT; &#34;地理目标&#34;并从下拉列表中选择定位正确的国家/地区。

答案 1 :(得分:39)

这是Google's official documentation on multi-lingual sites。其中包含与您链接到的blogspot条目基本相同的信息。他们写道:

  

将每种语言的内容保存在不同的网址上。

然后就他们认为最佳用户体验实践提供建议。

鉴于此,如果您想获得最佳的Google体验,则应遵循其指南并使用特定语言的网址。 Google搜索肯定是语言敏感的,并且应该在人们搜索时返回相应版本的网站。

如果您设置了一个网址,那么您打算如何设置该语言?基于语言标题? Javascript检测?饼干?这些都可能成为搜索引擎优化的问题,而且由于谷歌并不认为它们是好方法,因此他们不提供有关如何使用它们优化搜索引擎优化的建议。

您最好的选择可能是谷歌的建议,并有多个网址。

答案 2 :(得分:9)

2015年更新:

Google现在支持Crawling and indexing of locale-adaptive pages

从链接的帖子中引用,他们支持:

...

  • 地理分布式抓取 Googlebot将开始使用看似来自美国境外的IP地址,此外还有当前显示的IP地址来自Googlebot目前使用的美国。
  • 依赖于语言的抓取,Googlebot会在请求中使用 Accept-Language HTTP标头开始抓取。

...

虽然他们仍然推荐using separate URLs