1

有人可以告诉我如何根据访问者的 IP 地址设置网页的语言,以便他自动获取他所在国家/地区语言的页面。当然,如果该语言是由 Web 开发人员实现的。更好的是,我展示了一些自动谷歌翻译文本的例子。

那么如何让来自美国的访问者在我的页面上用英语和来自法国的访问者用法语获得文本。所有这些都是由谷歌从某种第三种原始语言翻译而来的。

非常感谢。

4

3 回答 3

2

当谈到自动语言选择时,如果您使用的是 Apache,我会选择 mod_rewrite 路线。在涉及应用程序代码的生产环境中更改更容易。mod_rewrite 从标题中获取“Accept-Language”,然后应用重写规则。

RewriteCond %{HTTP:Accept-Language} ^fr [NC]

重写规则 ^$ /fr/ [L,R=301]

您可以堆叠重写条件和规则以作为捕获所有语言变体(fr、fr-ca、fr-fr、fr-mo、fr-ch 都转到 fr)

查看官方 mod-rewrite 文档

好的语言示例: http ://tech-blog.borychowski.com/index.php/2009/03/htaccess/redirect-according-to-browser-language-mod-rewrite-and-http_accept_language/

一旦您将用户推送到正确的通用语言(当 URL 中没有定义时),应用程序可以设置会话语言,使用设置的语言编写链接。允许人们即时更改语言也很好,因为双语本地人(即魁北克)的大多数用户都使用一种以上的语言工作。我曾与喜欢阅读英文技术文档的讲法语的程序员一起工作。

当谈到谷歌翻译文本时,我会很小心。如果您进行任何电子商务交易,您的国际客户(或具有国际浏览器设置的本地客户)可能会收到不正确或不准确的产品信息、描述和“条款和条件”。如果您没有为每个即时翻译将准确的 Google 翻译文本保存到您的数据库中,则无法跟踪用户以他们的语言承诺的内容。一些未翻译的合法副本可能是有序的。

我希望这有帮助。

于 2010-01-22T21:42:01.347 回答
1

任何一个:

  • 从位置猜测语言(您可以从他们的 IP 中获得)。

  • 查看请求标头的“接受语言”值。

要查看您的请求标头中的内容,请查看此处:http ://www.ericgiguere.com/tools/http-header-viewer.html

于 2009-12-01T14:45:26.263 回答
-1

从偏移量来看,这是一个坏主意。

  1. 在 IP 地址上进行地理定位并不总是有效(如果您使用 TOR 则无效)
  2. 即使你做对了,你会为加拿大或瑞士这样的国家做什么?
  3. 自动翻译是可以的,但最好告诉别人您没有使用他们的语言的网站 - 他们可能更喜欢用不同的语言阅读它。
于 2009-12-01T14:49:09.753 回答