首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IIS重定向规则不捕获指定的RegEx

IIS重定向规则不捕获指定的RegEx
EN

Stack Overflow用户
提问于 2022-06-29 16:24:02
回答 2查看 38关注 0票数 0

我正在尝试为IIS服务器配置重定向规则。

我已经检查了所有的文档以及站点上的其他几个例子,但是当模式匹配时,我似乎无法获得所请求的URL来捕获。我试着在IIS规则编辑器中测试regex,它显示它是正确匹配的。我也设置了一些条件,并测试了它们,但是,它似乎也不起作用。

以下是xml中的规则

代码语言:javascript
运行
复制
<rule name="product_detail.asp redirect to aspx" stopProcessing="true">
    <match url="http:\/\/ten\.perle\.com\/products\/product_detail.asp\?(.*)&amp;(.*)&amp;(.*)" />
        <conditions>
           <add input="{QUERY_STRING}" pattern="http:\/\/ten\.perle\.com\/products\/product_detail.asp\?(.*)&amp;(.*)&amp;(.*)" />
        </conditions>
        <action type="Redirect" url="products/product_detail.aspx?{C:1}&amp;{C:2}&amp;{C:3}" appendQueryString="false" />
</rule>

样本url detail.asp?a=2&i=08000514&c=1650

我不明白我到底做错了什么,似乎我的正则表达式应该捕捉到请求,但出于某种原因,它似乎从未被捕获过。

EN

回答 2

Stack Overflow用户

发布于 2022-06-30 09:35:14

我觉得你的URL规则似乎有问题。

例如,向以下URL发送请求:http://ten.perle.com/products/product_detail.asp?id=123&name=test 匹配URL中的模式应该是URL的路径部分:products/product_detail.asp QUERY_STRING服务器变量与URL参数字符串的部分匹配:id=123&name=test

您可以尝试修改您的规则并查看它是否有效。

此外,还可以在IIS中使用失败的请求跟踪进行故障排除。FailedReqLogFiles文件夹中的日志文件可以详细查看重写的整个过程,并可以检查匹配失败的位置。

票数 0
EN

Stack Overflow用户

发布于 2022-06-30 15:48:08

所以这个问题是用下面的规则解决的

代码语言:javascript
运行
复制
<rule name="product_detail.asp redirect" stopProcessing="true">
    <match url="^(products/product_detail.asp?)([^x]+)$" />
    <action type="Redirect" url="products/product_detail.aspx?{R:2}" />
</rule>

有些事情,我想包括,以防其他人面临类似的问题。有些事情需要澄清。

  1. 匹配URL部分应该包含要重定向的URL的相对路径。在我最初的尝试中,我不确定是包含一个完整的路径,还是只包含相对部分。这一点在任何文档中都不完全清楚,至少在我能找到的任何地方都没有明确说明。
  2. 重定向URL需要包含新URL的基本URL之后所需的所有内容。如果需要包括参数,则通过规则{R:x}或从条件{C:x}中提取参数。
  3. 我花了一些时间来理解参数捕获,这是基于regEx的,如果您测试它,它将告诉您如何将url匹配分解为基于regEx的编号规则。
  4. 最后,对于用例,我不需要查询字符串条件,对我来说,使用从初始模式捕获的规则更简单。

另外,to还在致力于IISv10.0希望,这有助于其他一些希望这样做的初学者,并澄清IIS重定向中一些不太明显的方面。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72804811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档