Ruby on Rails 301重定向

xam*_*rax 7 seo redirect ruby-on-rails actioncontroller

我添加了slugs到一些模型,但由于SEO我需要从旧链接做301重定向:旧:

http://host.com/foo/1
Run Code Online (Sandbox Code Playgroud)

新:

http://host.com/foo/foo_slug
Run Code Online (Sandbox Code Playgroud)

问题:在这种情况下如何实现301重定向?是否可以从大写链接实现301重定向?像这样:

http://host.com/foo/FOO_SLUG -> http://host.com/foo/foo_slug
Run Code Online (Sandbox Code Playgroud)

Stu*_*t M 15

您应该能够通过将其添加到控制器操作来重定向状态301:

redirect_to "http://host.com/foo/foo_slug", :status => 301
Run Code Online (Sandbox Code Playgroud)

有关redirect_to详细信息,请参阅API文档.

将大写URL重定向到小写版本应该没有问题,尽管HTTP服务器层可能会更好地处理这些问题,例如Apache mod_rewrite规则.