是否可以重写网址,例如:
http://www.domain.com/?language=en
http://www.domain.com/contact?language=en
为:
http://www.domain.com/en/
http://www.domain.com/en/contact
到目前为止我所拥有的:
RewriteEngine on
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?language=$1 [QSA,L]
http://www.domain.com/en/ <- Gives a server not found error
http://www.domain.com/en/contact <- Goes to the main root (/index.php) and give the en variable
答案 0 :(得分:1)
试试这个:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^(en|fr)(/(.*))$ $2/index.php?language=$1 [L]
</IfModule>
注意:
我在其中添加了fr
,以便您可以看到多种语言的示例。此外,这将是index.php脚本的内部重定向。
编辑:
现在修改为允许URI语言部分之后的内容。现在应该按照你想要的方式工作。
这里是正则表达式的一个很好的参考: