Ruby on Rails i18n问题

时间:2011-03-05 08:01:46

标签: ruby-on-rails internationalization

我有一个由Ruby on Rails创建的网站。在我实施HTTP_ACCEPT_LANGUAGE以检测客户端的计算机语言并使用i18n设置网站的语言之前,可以在Google上找到该网站。

使用HTTP_ACCEPT_LANGUAGE和i18n后,Google停止抓取我的网站。最糟糕的是,一些国家在访问我的网站时收到了读取超时错误。

有什么问题? (使用GeoIP不是优选的,检测客户端的计算机语言更有意义)

2 个答案:

答案 0 :(得分:3)

显然,Google bot无法使用HTTP_ACCEPT_LANGUAGE。请参阅此article for reference

答案 1 :(得分:2)

正如@picardo所说,Google僵尸程序在不发送HTTP_ACCEPT_LANGUAGE标题的情况下抓取网页。我已经实现了一个Rails gem来自动设置基于此标头的I18n.locale,但后来又回到基于域名后缀的猜测,这样它仍然可以检测到Google bot的正确语言。宝石名为locale_detector