2014-02-20 64 views
2
RewriteRule ^albums/([^/.]*)/?$ albums.php?user=$1&name=$2 [L,QSA] 
RewriteRule ^albums/([^/.]*)/([^/.]*)/?$ albums.php?user=$1&name=$2&album_id=$3 [L,QSA] 

original 
albums.php?user=123&name=foo&album_id=456 

result 
albums/123/foo/456 

我有一个htaccess的重写URL,我需要设置3 GET变量,但是这个代码不工作htaccess的重写规则3个变量

人知道如何解决这一问题?

回答

2

你的正则表达式是错误的。你可以使用:

#For 3 variables: 
RewriteRule ^albums/([^/.]+)/([^/.]+)/([^/.]+)/?$ albums.php?user=$1&name=$2&album_id=$3 [L,QSA] 

# for 2 variables: 
RewriteRule ^albums/([^/.]+)/([^/.]+)/?$ albums.php?user=$1&name=$2 [L,QSA] 
+0

如果这个页面可以是2和3变量呢? – Ben

+0

现在有两个规则,一个是3,一个是2个变量。 – anubhava

+0

thx很多!欣赏! – Ben