URL 重写 - 在 URL 中附加页面名称和查询字符串
URL Rewriting - Append page name along with query string in URL
我想在 web.config
中添加一些 URL 重写内容
来源URL:
http://constant.com/caam/verifying/?token=kpG1TwYo2KqTS%2bKg%2fY6lVm2Gt
需要将其转换为URL:
http://constant.com/caam/verifying/default.aspx?token=kpG1TwYo2KqTS%2bKg%2fY6lVm2Gt
任何关于如何完成这个或其他建议的想法都非常感谢。
IIS (web.config) 中的基本重定向规则可能如下所示:
<rule name="Token Redirect" stopProcessing="true">
<match url="caam/verifying.*" />
<conditions trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="&?(token=[^&]+)&?" />
<add input="{REQUEST_URI}" pattern="default.aspx" negate="true" />
</conditions>
<action type="Redirect" url="/caam/verifying/default.aspx?{C:1}" appendQueryString="false" redirectType="Found" />
</rule>
您可以更改匹配项 url,但基本上这是匹配以 caam/verifying.
开头的所有内容
然后(另外)检查查询字符串在某处是否有 "token=",并捕获它的值(它将进入捕获 1,因为这里没有其他内容,例如 {C:1}) .
然后我们将重定向输出为 /caam/verifying/default.aspx?{C:1}
(例如,{C:1} 是 "token=12345")。
请注意,仅当 URL 匹配(caam/verifying 部分)并且参数匹配("token=" 部分)时才会命中此规则 - 此重定向规则将被跳过否则。
编辑
我添加了一个额外的 "negate" 规则 不 匹配 "default.aspx" 页面。
我想在 web.config
中添加一些 URL 重写内容来源URL: http://constant.com/caam/verifying/?token=kpG1TwYo2KqTS%2bKg%2fY6lVm2Gt
需要将其转换为URL: http://constant.com/caam/verifying/default.aspx?token=kpG1TwYo2KqTS%2bKg%2fY6lVm2Gt
任何关于如何完成这个或其他建议的想法都非常感谢。
IIS (web.config) 中的基本重定向规则可能如下所示:
<rule name="Token Redirect" stopProcessing="true">
<match url="caam/verifying.*" />
<conditions trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="&?(token=[^&]+)&?" />
<add input="{REQUEST_URI}" pattern="default.aspx" negate="true" />
</conditions>
<action type="Redirect" url="/caam/verifying/default.aspx?{C:1}" appendQueryString="false" redirectType="Found" />
</rule>
您可以更改匹配项 url,但基本上这是匹配以 caam/verifying.
开头的所有内容然后(另外)检查查询字符串在某处是否有 "token=",并捕获它的值(它将进入捕获 1,因为这里没有其他内容,例如 {C:1}) .
然后我们将重定向输出为 /caam/verifying/default.aspx?{C:1}
(例如,{C:1} 是 "token=12345")。
请注意,仅当 URL 匹配(caam/verifying 部分)并且参数匹配("token=" 部分)时才会命中此规则 - 此重定向规则将被跳过否则。
编辑
我添加了一个额外的 "negate" 规则 不 匹配 "default.aspx" 页面。