如何编码"永远"移动/删除 mvc 路由



我在一个网站上有几个页面最近被移动(到另一个mvc路由),有些已被删除。 就对搜索引擎(和我的用户)友好而言,应该如何处理这样的变化?

我会使用 IIS 中的 URL 重写模块为那些错误/移动的路由发出 301/302 重定向。 这将使Google/Bing为您的SEO感到高兴,并防止任何书签链接失效。

由于您没有提供任何示例,因此我无法向您展示如何真正为您的案例使用重写,但 learn.iis.net 有大量数据/示例/用例。

一个简单/愚蠢的例子。 我们将从博客控制器重定向到文章控制器(在您的 web.config 中)

<rewrite>
  <rules>
    <rule name="Redirect from blog">
      <match url="^blog/([_0-9a-z-]+)/([0-9]+)" />
      <action type="Redirect" url="article/{R:2}/{R:1}" redirectType="Found" />
    </rule>
  </rules>
</rewrite>

看看 Ben 的解决方案:

http://ben.onfabrik.com/posts/aspnet-mvc-issuing-multiple-301-redirects

它看起来是一种您可能会发现有用的方法。

最新更新