0

有多个 RewriteCond 时是否可以在 RewriteRule 上有多个反向引用?

例如,我有

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

但我只能得到 LAST 条件结果。真的有可能有 %2、%3、%N 还是只有最后一个 (%1)?

4

1 回答 1

2

如果这是为了,.htaccess那么您应该能够在最后两个条件下使用 1 条规则来执行此操作:

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

小心信任用户提供的数据。

于 2013-06-04T22:52:32.683 回答