Javascript按语言重定向

时间:2015-02-13 17:47:20

标签: redirect detect country

我在哪里可以找到一个简单的javascript重定向代码,将检测到的所有语言重定向到英文页面,但具有正确页面的意大利语除外?

非常感谢

1 个答案:

答案 0 :(得分:1)

这样的东西?

http://javascript.about.com/library/bllang.htm

var langcodes=["fr", "es"];

// Browser Language Redirect script
// copyright 3rd January 2006, Stephen Chapman
// permission to use this Javascript on your web page is granted
// provided that all of the code in this script (with the sole exception
// of the langcodes array entries) is used without any alteration

var langCode = navigator.language || navigator.systemLanguage;
var lang = langCode.toLowerCase(); 
lang = lang.substr(0,2); 
var dest = window.location.href; 
for (i=langcodes.length-1;i >= 0; i--){
  if (lang==langcodes[i]){
    dest = dest.substr(0,dest.lastIndexOf('.')) + '-' + lang.substr(0,2) + dest.substr(dest.lastIndexOf('.')); 
    window.location.replace ?window.location.replace(dest) :window.location=dest;
  }
}

通常,我更喜欢在服务器级别重定向(例如,使用mod_rewrite,对于Apache):

http://www.giuseppeurso.eu/en/url-redirection-according-to-browser-language-apache-mod_rewrite/

PS:这里有一些额外的链接,根据语言有不同的重定向选项:

http://moz.com/community/q/best-practice-to-redirects-based-on-visitors-detected-language

How to Redirect a Web Page

  • HTML重定向

  • JavaScript重定向

  • Apache重定向

  • Nginx重定向

  • Lighttpd重定向

  • PHP重定向

  • Ruby on Rails重定向

  • .NET重定向

  • Node.js重定向