2010-10-20 48 views
1

我正则表达式ISAPI重写这里就不传递变量在URLURL重写正则表达式的问题

试图通过像一个变量:www.domain.com/z34232/ProductName.html? REF =魔法

但代码是忽略了 “REF =魔法” 串

RewriteRule .*z([[:digit:]]*)\/.*.html\??(.*) /product.asp\?pnum=$1(?2&$2&:) [I,O,L] 

任何建议将是非常有益的。我需要保持字符串的其余部分不变。

+0

结果应该是:“www.domain.com/product.asp?pnum=34232&ref=magic&:”? – Dingo 2010-10-20 22:37:28

回答

0

我想你想实现这样的事情:

RewriteRule .*z([0-9]*)/.*\.html(\?.*)? /product.asp?pnum=$1$2 [QSA] 
+0

似乎没有通过URL参数 – joe 2010-10-21 00:01:21

+0

与QSA参数它确实。实际上,QSA意味着Apache会自己添加查询字符串部分 – Andrew 2010-11-05 14:09:33

0

您不能使用模式的查询字符串相匹配。类似以下内容应该可以工作:

RewriteRule .*/z([[:digit:]]*)/.*\.html /product.asp?pnum=$1&%{QUERY_STRING}