Skip to main content
 首页 » 编程设计

regex中htaccess重写规则3变量

2024年11月24日99JustinYoung

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变量,但是这段代码不起作用

有人知道如何解决这个问题吗?

请您参考如下方法:

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

#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]