通过删除一个部分来修复web.config中的错误链接

时间:2017-06-30 14:06:34

标签: iis model-view-controller web-config

第三方供应商通过错误的取消订阅链接向我们的客户发送电子邮件。在他们可以更新此URL之前,我希望通过web.config更正任何请求。

正确的工作环节应该是:

https://www.example.com/my-account/alertunsubscribe?email=[email]&searchname=[searchname]

电子邮件中的链接断开:

http://www.example.com/property/myaccount/alertunsubscribe?email=[email]&searchname=[searchname]

我一直试图使用以下内容:

<rule name="AlertUnsub" stopProcessing="true">
   <match url=".*" ignoreCase="true" />
    <conditions>
        <add input="{HTTP_HOST}" pattern="^property/myaccount/alertsubscribe" />
    </conditions>          
    <action type="Redirect" url="https://www.example.com/my-account/alertsubscribe" appendQueryString="true" />
</rule>

任何想法我做错了什么?我已经有另一个规则将非http流量重定向到https,这很好,所以我不认为我必须在这里处理。非www到www。

也是如此

任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:1)

 

您应该查找与网址不匹配{HTTP_HOST}变量的匹配项,因此不需要条件。

请改为尝试:

<rule name="AlertUnsub" stopProcessing="true">
    <match url="^property/myaccount/alertunsubscribe" />
    <action type="Redirect" url="my-account/alertunsubscribe" appendQueryString="true" redirectType="Found" />
</rule>

BTW在问题中对alertsubscribealertunsubscribe存在疑惑。我认为它是alertunsubscribe