【发布时间】:2021-02-09 16:30:52
【问题描述】:
我需要将旧页面的 url 重写到新页面,例如: 老:https://www.mysite.it/scheda.asp?num=123456 新:https://www.mysite.it/scheda/?num=123456
我在 web.config 中添加了以下几行但不起作用,当我转到 https://www.mysite.it/scheda.asp?num=123456 注意到发生时,网站无需重写即可转到页面:
<rule name="scheda-rew" stopProcessing="true">
<match url="scheda.asp(.*)" />
<action type="Rewrite" url="scheda/{R:1}" logRewrittenUrl="true" />
</rule>
我试试这个:
<rule name="scheda-rew2" stopProcessing="true">
<match url="^scheda\.asp" ignoreCase="true" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{QUERY_STRING}" pattern="isbn=([0-9]+)" />
</conditions>
<action type="Redirect" url="scheda/{C:1}" appendQueryString="false" />
</rule>
什么都没有发生,似乎我所做的所有改变都没有影响
【问题讨论】:
-
谢谢你,我可能不明白,但我需要让它在我的新网站的每个页面mysite.it/scheda/?num=\d+ 上工作,但不工作,为什么?
-
@LexLi 查看编辑
-
docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/… 了解规则在内部是如何工作的,然后您可能就知道要更改什么了。
标签: iis url-rewriting