我想知道是否有人可以阐明我认为不可能的事情......
某个网站即将停用,网站所有者提供了大量要强制执行的 URL 重定向列表 (5000)。此列表中的绝大多数条目都重定向到通用登录页面。
所以,问题是有没有办法在 Web 配置中使用 HTTP 重定向功能来处理特定的重定向(oldsite.com/page1 到 newsite.com/page1、oldsite.com/page2 到 newsite.com/page2 等等)并将特定重定向列表中未包含的任何内容定向到通用登陆页面?
谢谢, C
是的,我也这么认为。 IIS 重写模块允许您定义任意数量的重定向规则,我相信它们将“依次”执行。因此,您应该能够为特定 URL(oldsite/page1 -> mewsite/page1 等)创建规则,然后在这些规则之后进行包罗万象。 https://learn.microsoft.com/en-us/iis/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module#creating-a-redirect-rule
是的,您可以使用 IIS 中的重写模块来处理特定重定向,并将特定重定向列表之外的内容路由到通用登录页面。
以下是如何在 web.config 中设置重定向规则的示例:
<rewrite>
<rules>
<!-- Specific redirects -->
<rule name="Redirect page1">
<match url="^page1$" />
<action type="Redirect" url="https://newsite.com/page1" />
</rule>
<rule name="Redirect page2">
<match url="^page2$" />
<action type="Redirect" url="https://newsite.com/page2" />
</rule>
<!-- Add more specific redirects as needed -->
<!-- Catch-all redirect -->
<!-- Any other URL will be redirected to the generic login page -->
<rule name="Redirect to Generic Landing Page">
<match url=".*" />
<action type="Redirect" url="https://newsite.com/generic-landing-page" />
</rule>
</rules>
</rewrite>