ISAPI 重写:将查询字符串附加到重写的 URl 的查询字符串
ISAPI Rewrite : Append querystring to the rewrited URl's Query String
实际上,使用以下 ISAPI 规则
RewriteCond %{HTTP:Host} ^domain.com$
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx [NC,L]
我正在重写以下内容 URL
htttp://www.domain.com/Product-name/
到
htttp://www.domain.com/test.cfm?ProducID=xxxx
这工作正常,但是当我在 URL 中使用查询字符串时,它不工作
对于鸡蛋:
以下 URL 无效
htttp://www.domain.com/Product-name?categoryID=YYYY
我需要将上面的URL重写如下
htttp://www.domain.com/test.cfm?ProducID=xxxx&categoryID=YYYY
我使用了以下规则,但没有成功
RewriteCond %{QUERY_STRING} ^param=(\d+)$ [NC]
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx?param2=%1? [NC,L]
请问有什么解决办法吗?
如果您使用的是 ISAPI_Rewrite 3,那么您应该添加 QSA 标志以将原始查询字符串附加到结果 URL:
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx [NC,L,QSA]
以下规则,将查询字符串追加到重写的URL的查询字符串中,避免了404错误
URL 带有查询字符串和尾部斜杠 (/)
RewriteRule ^/Product-name/\? /test.cfm?ProductID=xxxx [NC,L,QSA]
URL 带有查询字符串且没有尾部斜杠 (/)
RewriteRule ^/Product-name\? /test.cfm?ProductID=xxxx [NC,L,QSA]
URL 没有查询字符串和尾部斜杠 (/)
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx [NC,L]
URL 没有查询字符串和尾部斜杠 (/)
RewriteRule ^/Product-name$ /test.cfm?ProductID=xxxx [NC,L]
实际上,使用以下 ISAPI 规则
RewriteCond %{HTTP:Host} ^domain.com$
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx [NC,L]
我正在重写以下内容 URL
htttp://www.domain.com/Product-name/
到
htttp://www.domain.com/test.cfm?ProducID=xxxx
这工作正常,但是当我在 URL 中使用查询字符串时,它不工作
对于鸡蛋: 以下 URL 无效
htttp://www.domain.com/Product-name?categoryID=YYYY
我需要将上面的URL重写如下
htttp://www.domain.com/test.cfm?ProducID=xxxx&categoryID=YYYY
我使用了以下规则,但没有成功
RewriteCond %{QUERY_STRING} ^param=(\d+)$ [NC]
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx?param2=%1? [NC,L]
请问有什么解决办法吗?
如果您使用的是 ISAPI_Rewrite 3,那么您应该添加 QSA 标志以将原始查询字符串附加到结果 URL:
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx [NC,L,QSA]
以下规则,将查询字符串追加到重写的URL的查询字符串中,避免了404错误
URL 带有查询字符串和尾部斜杠 (/)
RewriteRule ^/Product-name/\? /test.cfm?ProductID=xxxx [NC,L,QSA]
URL 带有查询字符串且没有尾部斜杠 (/)
RewriteRule ^/Product-name\? /test.cfm?ProductID=xxxx [NC,L,QSA]
URL 没有查询字符串和尾部斜杠 (/)
RewriteRule ^/Product-name/$ /test.cfm?ProductID=xxxx [NC,L]
URL 没有查询字符串和尾部斜杠 (/)
RewriteRule ^/Product-name$ /test.cfm?ProductID=xxxx [NC,L]