ISAPI_REWRITE是一个简单的搜索和替换?

时间:2013-11-01 14:40:50

标签: isapi-rewrite

使用ISAPI REWRITE v3

我需要替换URL中的字符串。旧字符串是'p = type1_',新字符串是'p = type2_'。所以

http://www.somesite.com/cgi-bin/script.pl?t=something&p=type1_abcde

变为

http://www.somesite.com/cgi-bin/script.pl?t=something&p=type2_abcde

我认为这应该有效:

RewriteRule ^(.*)p=type1_(.*)$ $1p=type2_$2  [NC]

但是,一旦原始字符串包含'?',我就会在ISAPI_REWRITE RegexTest应用程序中得到'Pattern Not Matched' - 实际上,它总是如此。

如何进行简单的搜索和替换?

1 个答案:

答案 0 :(得分:1)

您需要使用RewriteCond %{QUERY_STRING}来搜索查询字符串。

尝试这样的事情:

RewriteCond %{QUERY_STRING} t=(.*)&p=type1_(.*)
RewriteRule ^cgi-bin/script.pl$ cgi-bin/script.pl?t=$1&p=type2_$2 [NC]