如何解决如何覆盖Tuckey的use-query-string设置?
| 我正在尝试向urlrewrite.xml中的重定向网址添加查询参数:<rule>
<condition name=\"host\">www.foo.com</condition>
<from>^/foo/bar</from>
<to type=\"redirect\" last=\"true\">http://www.bar.com/foo/bar?test=testString</to>
</rule>
但是进入的请求已经有一个参数,并且结果重定向的URL是这样的:
http://www.bar-d.mtvi.com/foo/bar?test=testString?test2=test2String
注意第二个“?”。
我想要的是:
http://www.bar-d.mtvi.com/foo/bar?test=testString&test2=test2String
在urlrewrite元素中将use-query-string设置为\“ true \”。
问题:如何正确传递查询字符串?
感谢您的考虑和任何建议,不胜感激!
解决方法
好的,我知道了。发生这种情况是因为我没有使用\“ $ \”符号关闭\“ from \”匹配项。这是它的外观:
<rule>
<condition name=\"host\">www.foo-d.com</condition>
<from>^/foo/bal(\\?)?(.*)?$</from>
<to type=\"redirect\" last=\"true\">http://www.bar-d.mtvi.com/foo/bar?test=testString&$2</to>
</rule>
唯一的问题是,如果原始请求上没有查询字符串,则\“ to \” stmt仍在查询字符串的末尾添加一个&符。为了克服这个问题,您可以创建2条重写规则,一条与查询字符串匹配,另一条与out匹配。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。