PHP .htaccess有两个参数

时间:2016-04-27 16:34:45

标签: php .htaccess

现在我有一个多语言的CMS,它与.htaccess一起工作很好。

这是我的代码:

RewriteEngine on
#remove .php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

#redirect lang
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+?)/(.*)$ $2.php?lang=$1 [L]

现在我的链接:

www.mywebsite.com/team.php?lang=en 

充当

www.mywebsite.com/en/team

没关系。

第一个问题是: 我创建了一个包含?lang=en?lang=de链接的语言切换器,当我点击德语时,链接就变为

www.mywebsite.com/en/team?lang=de

这是无效的,并且它不会改变语言。

如何设置语言切换器以更改德语语言,所以此URL:

www.mywebsite.com/en/team

成为

www.mywebsite.com/de/team

第二个问题: 我有这样的页面:

www.mywebsite.com/team-view?id=1
www.mywebsite.com/team-view?id=2
www.mywebsite.com/team-view?id=3 

等等。当我添加另一个参数lang=en

所以他们成了

www.mywebsite.com/team-view?id=1&lang=en

这是有效的,它显示了英文内容,但如何设置.htaccess有两个参数?

我希望此链接成为

www.mywebsite.com/en/team-view/1

也是正确更改语言的语言切换器,所以当我选择德语时就是这样:

www.mywebsite.com/de/team-view/1

0 个答案:

没有答案