404重定向在Orchard 1.7.2

时间:2014-02-26 15:37:49

标签: redirect http-status-code-404 orchardcms orchardcms-1.7

我最近将一个站点从WordPress迁移到了Orchard。我们设法保持大部分网址不变,但由于信息架构/分类法的变化,我们修改了一些网址。

我们现在遇到的问题是,没有结转的旧网址在新网站上显示为404页面,正如人们所期望的那样。

我搜索了一个可以解决这个问题的插件,但是我发现特别专门用404处理的插件似乎在Orchard 1.7中没有用 - 它说要将以下代码添加到Orchard web.config

<customErrors mode="On">
      <error statusCode="404" redirect="/Redirect404/Lookup" />
</customErrors>

有关插件的更多信息:http://gallery.orchardproject.net/List/Modules/Orchard.Module.Redirect404

Orchard似乎完全忽略了这个配置,插件的控制器永远不会被击中。我在某处看到,这似乎是Orchard 1.4及更高版本的变化 - 它不受CustomErrors元素的影响 - 这是真的吗?

基本上我的问题是,有没有办法让这个功能/插件在Orchard 1.7.2中运行?如果没有,我如何处理404旧网址重定向到新网址?

谢谢!

3 个答案:

答案 0 :(得分:1)

问题是Orchard 1.7.2使用ActionFilters来处理404s,而不是web.config中的<customErrors>元素。解决此问题的一种方法是使用您自己的ActionFilter来处理重定向。

以下是我撰写的关于此主题的博文:http://www.bluesphereinc.com/blog/handling-301-redirects-in-orchard

答案 1 :(得分:0)

不要使用404来处理永久重定向。这些可以通过web.config中的URL重写(更好的解决方案)或使用您可以在库中找到的重写规则进行设置。

答案 2 :(得分:0)

我相信你想要做的是启用Alias UI功能,它是核心的一部分,然后添加旧路径并将它们指向新路径

这是一个相当不错的功能概述,虽然我认为它是相当自我解释的,你应该没问题:) http://www.davidhayden.me/blog/whats-new-in-orchard-1.4