2013-06-04 25 views
0

當有多個RewriteCond時,RewriteRule上可能有多個反向引用?RewriteRule中的mod_rewrite反向引用

例如,我有

# Cookie value 
RewriteCond %{HTTP_COOKIE} user_lang=([^;]+)$ [NC] 
# /path/to/image/ 
RewriteCond %{REQUEST_URI} ^(/.*/)[^/]*$ [NC] 
# filename.jpg 
RewriteCond %{REQUEST_URI} ([^/]+)/?$ [NC] 

現在我想使這項工作:

RewriteRule .* %2%3/%1 [R,L] 

但我只能得到最後一個條件的結果。是否真的有%2,%3,%N或只有最後一個(%1)?

回答

2

如果這是.htaccess,那麼你應該能夠用1個規則做這最後兩個條件:

RewriteCond %{HTTP_COOKIE} user_lang=([^;]+)$ 
RewriteRule ^([^/]+)/([^/]+)/?$ $1/$2/%1 [R,L] 

小心信任用戶提供的數據。