我在哪里可以找到一个简单的javascript重定向代码,将检测到的所有语言重定向到英文页面,但具有正确页面的意大利语除外?
非常感谢
答案 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
HTML重定向
JavaScript重定向
Apache重定向
Nginx重定向
Lighttpd重定向
PHP重定向
Ruby on Rails重定向
.NET重定向
Node.js重定向