Web.config mass 301 将旧新闻页面重定向到稍微不同的 URL

时间:2021-01-12 22:39:08

标签: redirect iis web-config

我需要使用 web.config 将一堆新闻文章重定向到不同的 url 格式。

例如这个网址:

https://www.example.com/footer/press-resources/press-releases/press-release-detail/abcd-press-release-item

应该重定向到这个网址:

https://www.example.com/about/press-releases/press-release-detail/abcd-press-release-item

在本例中,如您所见,Url 的这一部分保持完整/press-release-detail/abcd-press-release-item,但在此之前的所有其他内容都应重定向。 Url 唯一的动态部分是位于 Url 末尾的文章标题,在本例中为:abcd-press-release-item

我有大约 300 个项目,显然将它们一个一个地重定向需要一些时间。有没有办法将它们全部排除并大量重定向旧网址到新网址?

这是一个带有 .NET CMS 和 web.config 文件的 Windows/IIS 服务器。 我试过这个规则,但它对我不起作用:

<rule name="301 Redirect 1" stopProcessing="true">
      <match url="^https://www.example.com/footer/press-resources/press-releases/press-release-detail\$" />
      <action type="Redirect" url="https://www.example.com/about/press-releases/press-release-detail" redirectType="Permanent" />
    </rule>

1 个答案:

答案 0 :(得分:1)

尝试使用此 URL 重写规则:

       <rewrite>
            <rules>
                <rule name="Test" stopProcessing="true">
                    <match url="(footer)/(press-resources)(.*)" />
                    <action type="Redirect" url="https://www.example.com/about{R:3}" />
                </rule>
            </rules>
        </rewrite>

enter image description here

相关问题