2013-12-09 95 views
1

我知道这个问题已经结束了,但没有找到符合我的问题的东西。htaccess多个参数重写规则

我目前正在建立一个网站,和我的网址是这样的:

www.foo.com/ 或www.foo.com/index.php。 它们可能需要1,2,或三种不同的参数,如

www.foo.com/index.php?page=Home & LANG = EN &文章= 1

什么我像就像

www.foo.com/Home/ 

or www.foo.com/en/Home 

or www.foo.com/Article/1 

or www.foo.com/en/Article/1 

的URL是必需的页面参数,其他两个是不是.. 我不能有什么工作对我来说...任何帮助,将greately赞赏

非常感谢!

回答

2

最好有单独的清洁规则。把你的DOCUMENT_ROOT/.htaccess文件验证码:

RewriteEngine On 

RewriteRule ^index\.php$ - [L] 

RewriteRule ^([^/]+)/?$ /index.php?page=$1 [L,QSA] 

RewriteRule ^([a-z]{2})/([^/]+)/?$ /index.php?page=$2&lang=$1 [L,QSA] 

RewriteRule ^([a-z]{2})/([^/]+)/([0-9]+)/?$ /index.php?page=$2&lang=$1&article=$3 [L,QSA] 

RewriteRule ^([^/]+)/([0-9]+)/?$ /index.php?page=$1&article=$2 [L,QSA] 
+0

非常感谢很多人! – solarBanana

+0

不客气,很高兴它解决了问题。 – anubhava

1

尝试这样的事情

RewriteRule ^([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+)\.html$   index.php?param1=$1&param2=$2&param3=$3 
+0

我得到一个500内部错误,对不起,我真的不好用htaccess的文件 – solarBanana

+0

有可能在htaccess的错误file.please粘贴乌尔htaccess,因此我可以看到它 –