我正在尝试使用.htaccess的规则和条件,但不知道如何做我需要的。
这是场景:
我的网站有很多种语言。 (EN | ES | PT)
我想使用这样的网址:
www.site.com/home/
(original url): www.site.com/index.php?p=home
(opens home.php - session language)
就像这样:
www.site.com/en/home/
(original url): www.site.com/index.php?l=en&p=home
(opens home.php - en language)
为了检测网址中的语言,我需要创建哪些eules /条件?
TIA
SOLUTION:
RewriteRule ^(en|es|pt)?\/?([a-z0-9A-Z,_-]+)\/?$ index.php?l=$1&p=$2 [QSA,L]
由于
注意: “当前的解决方案也允许/ enfoobar被重写为/index.php?l=en&p=foobar,因为/独立于语言指示符” - Gumbo
答案 0 :(得分:1)
你可能会使用类似这样的东西
RewriteEngine on
RewriteBase /
RewriteRule ^(en|es|pt)/(.*) /index.php?l=$1&p=$2 [QSA,L]
答案 1 :(得分:0)
对于任何2位数字符语言
选项+ FollowSymlinks RewriteEngine on RewriteRule ^ [a-zA-Z] [a-zA-Z] /index.html $ index.html?language = $ 1 RewriteRule ^ index.html $ /index.php [L]