我需要在我的htaccess中进行重定向,具体取决于url中语言代码的存在与否。htaccess语言条件重定向
URL结构应与域其次是语言代码开始,然后,具体的页面(如任何正规网站)
domain.com/ EN /节/小节/
正如你可以看到,/EN/是语言代码,但也可能有不同的语言代码[/ EN/ES /它/]
所以规则应该如下:
- 语言代码必须存在,并且必须是长2个字符
如果这条规则不匹配,浏览器应该被重定向到默认郎“/ EN /”
在我看来它是这样的事情......只是在我的脑海里;)
RewriteCond %{REQUEST_URI} !^/([az]){2}/(.*)$
RewriteRule ^(.*)$ /en/$1 [L]
在此先感谢
Thanks @anubhava。我知道我的正则表达式是错误的hehehe,只是想出来。你的方法似乎是一个好的开始,但是,由于有更多可能的语言代码,它是好的,它是动态的,所以我不需要把它们全部放在一起。这就是为什么我想像[az] {2}这样的事情,任何想法?再次感谢! – Ivano
好吧现在尝试我的更新规则。 – anubhava
好吧,最后你的方法工作,但不得不添加2件事: - 301重定向标志 - 一种条件,以避免不应该被重定向的所有文件 @anubhava,它的工作很好。我会将您的答案标记为正确答案,并添加最终代码。如果你愿意,你可以用最终的代码更新你的答案,所以对其他人来说它仍然是正确的。 谢谢! – Ivano