【发布时间】:2020-01-29 19:57:33
【问题描述】:
我正在使用带有 IIS 8.5 的 Asp.Net Web 表单。
我已经有 url routing 并在 web.config 中设置 httperrors 以捕获 404/500 错误,但我现在需要将一些旧页面重定向到新页面目的地。
旧页面将不复存在,因此在重定向之前不能被HttpErrors代码捕获。
我想将页面从/widgets/oldwidget 重定向到/newwidget
注意:/newwidget 是重新路由的 url,物理页面将类似于:/pages/oldwidget.aspx。
我很难找到关于如何在这种情况下使用 httpdirect 的明确说明。
有人给点建议吗?这是正确的方法吗?
<httpRedirect enabled="false" httpResponseStatus="Permanent" exactDestination="true">
// Redirect my page
</httpRedirect>
<httpErrors errorMode="DetailedLocalOnly">
<clear/>
<remove statusCode="404" subStatusCode="-1"/>
<remove statusCode="500" subStatusCode="-1" />
<error statusCode="404" path="/404" responseMode="ExecuteURL" />
<error statusCode="500" path="/500" responseMode="ExecuteURL" />
</httpErrors>
【问题讨论】:
-
你使用 webforms 还是 MVC?
-
请考虑使用 IIS URL Rewrite 将那些不存在的 URL 重定向到新的 URL。为简单起见,应保持 404/500 不变。
标签: asp.net iis web-config http-redirect