International SEO不完全攻略

有效部署多国多语言网站SEO

有效部署多国多语言网站SEO

国际化品牌的全球化战略中最重要的一环便是本土化。听上去很拗口却是跨国品牌在他乡落地生根的真谛。对于SEO亦是这样,你不单要考虑在谷歌、Bing这样的国际化搜索引擎中每个区域的自然搜索表现,还要考虑像百度这样的区域霸主。于是乎,针对搜索引擎的本土化将是你促进排名的必由之路。本篇,我们将花一些笔墨来聊聊国际网站或者多语言网站的SEO最佳实践。

ccTLD,目录还是子域名?

国际化SEO分为语言和地区两个角度看问题,地区部分最常被问起的就是这个问题。换句话说,你现在有了一个国际网站www.example.com,你该如何部署你的地区网站。你有三个选择:

  1. example.cn
  2. example/zh-cn/
  3. cn.example.com

1. ccTLD

这里解释一下,ccTLD是指country code Top Level Domain;它相对于gTLD,即global Top Level Domain。.cn,.hk,.co.uk,.co.jp这些都属于ccTLD,而.com,.org,.net这些都属于gTLD。ccTLD是一个强指引,它说明该网站是专门服务该地区之用。因此相对于使用目录或者gTLD的子域名,ccTLD在排名上有着较大优势。这里的排名优势是指www.example.co.uk的网站在www.google.co.uk上相对于选择www.example.com/en_gb/和uk.example.com有排名优势。但是ccTLD也存在一些缺点,我们先把优缺点总结一下:

优点:

  1. 强指引,排名优势
  2. 独立网站,有自己的sitemap和robots.txt,受惩罚(如熊猫算法)也不会被“连坐”
  3. 独立网站,可根据受众地区单独优化提速
  4. 可在Google Search Console中单独设置面向地区
  5. 目标地区受众能享受到本土化的亲切感,容易获得信任

缺点:

  1. 全新网站需要重建DA 注:此处的域名权威性DA,即Domain Authority是Moz的提法。大致取决于链入域名的权威性和数量已经域名年龄、受罚历史等情况
  2. 见效慢,一个新网站要重新被索引
  3. 增加开发托管维护成本

为什么有自己的sitemap和robots.txt很重要呢?我们先卖个关子,后面讲。下图便是在Google Search Console中设置面向受众所在国家的界面,请按图索骥。

你可以在Google Search Console中设置网站面向国家地区

你可以在Google Search Console中设置网站面向国家地区

至于ccTLD的三个缺点非常容易理解。万事开头难,虽然后期效果卓越,但开荒期的确很累很费钱。

2. 为每个国家指定目录

这也是常见的一种做法。我们不废话,先罗列一下优缺点:

优点:

  1. 见效快,只是原有网站新增页面,很快就会被索引
  2. 直接使用原网站DA,无需开荒
  3. 成本经济,无需新建网站 注:某些情况下可能一套网页多个语言会付出更多维护成本,特别是东西方文字不统一的情况,还有就是各种墙内读不出的字体和脚本

缺点:

  1. 弱指引,地区排名较弱
  2. 无专门的robots.txt和sitemap,会受其他地区内容牵连受罚
  3. 难以根据受众地区单独优化提速
  4. 无法Google Search Console中单独设置面向地区
  5. 难以轻易获得目标地区受众的信任
  6. 若服务器在国外,会出现无法备案的情况
  7. 对于像百度这样的搜索引擎,如果中文内容并非占绝大多数将会影响百度对该网站的信任度和索引量

前面卖了一个关子,为什么robots.txt和sitemap没有专门的会成为问题呢?因为这里关系到一个蜘蛛爬行效率的问题。你需要让蜘蛛优先爬行你关心的那部分,比如你只想让百度爬取/zh-cn/的目录,那你可能会利用robots.txt针对百度蜘蛛把其他目录disallow掉。但是sitemap却无法为某个特别的搜索引擎定制规则,结果你还是必须要去站长平台去提交指定的sitemap地址。

3. 使用国家两字代码的子域名

这种方式也是我们常见的处理方式。优点很明显,你不用去买多个域名。缺点也很明显,它依然是一个独立的网站。我们同样可以总结一下:

优点:

  1. 中等程度指引,排名优势一般
  2. 独立网站,有自己的sitemap和robots.txt,受惩罚(如熊猫算法)也不会被“连坐”
  3. 独立网站,可根据受众地区单独优化提速
  4. 可在Google Search Console中单独设置面向地区
  5. 不需要为每个国家和地区购买多个域名

缺点:

  1. 中等程度指引,排名优势一般
  2. 全新网站需要重建DA。根域名对子域名并不传递DA。
  3. 见效慢,一个新网站要重新被索引
  4. 增加开发托管维护成本
  5. 目标地区受众无法充分感受到本土化的亲切感,获得信任能力一般

我们可以看到使用子域名是比较折衷的做法。在三者的比较中,它却显得最鸡肋。因为如果你可以买几个域名就能解决一些问题,那实在不应该省这些小钱,特别是对大型国际品牌来讲更是这样。我们在进行规划的时候更应该考虑前两者,而笔者更倾向于使用ccTLD,考虑到长远之计。

hreflang和多语言部署

讨论完了多个国家地区的SEO,我们来说多语言的部署。由于多个语言的内容时常会发生重复内容或者大量近似内容,不利于搜索引擎处理,于是就有了hreflang这个属性标签。

hreflang是谷歌引进的语言标签,百度尚未明确表示支持,读作h-ref-lang,即Hyperlink-Reference-Language。hreflang有多种使用方法,其中最常用的是在HTML中直接标出该网页的其他版本。

假设你有一个页面其URL为http://example.com/yemian.html。这个页面有一个英文版本,那么我们可以用hreflang来标示出来:

<link rel=”alternate” hreflang=”en-US” href=”http://example.com/page.html”>

在page.html上,你必须同样用此标签标出简体中文的版本:

<link rel=”alternate” hreflang=”zh-CN” href=”http://example.com/yemian.html”>

如果你有更多的语言,如我们再加入日语,那么在每个页面上我们都需要标出其他所有语言的地址和本语言版本的地址

yemian.html:

<link rel=”alternate” hreflang=”zh-CN” href=”http://example.com/yemian.html”>

<link rel=”alternate” hreflang=”en-US” href=”http://example.com/page.html”>

<link rel=”alternate” hreflang=”ja-JP” href=”http://example.com/peji.html”>

page.html:

<link rel=”alternate” hreflang=”zh-CN” href=”http://example.com/yemian.html”>

<link rel=”alternate” hreflang=”en-US” href=”http://example.com/page.html”>

<link rel=”alternate” hreflang=”ja-JP” href=”http://example.com/peji.html”>

peji.html:

<link rel=”alternate” hreflang=”zh-CN” href=”http://example.com/yemian.html”>

<link rel=”alternate” hreflang=”en-US” href=”http://example.com/page.html”>

<link rel=”alternate” hreflang=”ja-JP” href=”http://example.com/peji.html”>

请注意,这是相互承认的道理。即,你的页面不能指认其他没有指认回来的页面作为你的另一语言版本。

如果你使用多个子域名或者多个ccTLD,你同样必须通过hreflang来指引搜索引擎理解不同语言版本。在上面例子中中文、英语、日语三者非常不同,被认为是重复内容的可能性极小,但是如果是美国英语和英国英语、葡萄牙葡语和巴西葡语这样的区别就比较小了。为了不让搜索引擎认为两个页面的内容重复,我们必须要做好hreflang的部署。

在hreflang的使用过程中还有一些错误比较常见:

  • 用_(underscore)取代-(hyphen)用于语言地区代码中
  • 只有地区,没有语言(只有语言的情况是可以接受的)
  • 地区在前,语言在后
  • 使用多个x-default 注:x-default为默认的语言版本,如果客户端未指定语言版本或指定版本不可用,则服务器将伺服该版本。
  • 在国家地区中使用EU和UK,这两者并不是标准国家两字代码。前者不存在,后者需用GB

国际化SEO的两个典型错误

在本文的最后,我们分享两个典型的错误。

首先是谷歌说:“不要根据IP强制跳转。”这样做往往不单会影响收录而且会影响用户体验。大多数时候谷歌的蜘蛛都来自美国IP,谷歌想要看到美国的用户看到的网页是怎么样的,如果美国用户看到的页面和其他国家用户看到页面不同那会产生问题。

第二个问题是通过浏览器语言,即HTTP Request Header中的Accept-Language属性,来决定页面伺服的内容。如果你使用Chrome浏览器访问外语网站时,Chrome一般会问你要不要翻译,如果你选择不要翻译该种语言,Chrome就会把这种语言放到Accept-Language中。通常谷歌的蜘蛛在爬行请求时并不会设置Accept-Language属性,这样来说蜘蛛看到的页面就和用户看到的会不同。这是典型的content cloaking,我们要注意避免。