2014-02-20 93 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