Ruby on Rails的301重定向(Ruby on Rails 301 redirection

2019-08-20 05:12发布

我加了蛞蝓的一些机型,但因为SEO的我需要从旧链接做301重定向:老:

http://host.com/foo/1

新:

http://host.com/foo/foo_slug

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

http://host.com/foo/FOO_SLUG -> http://host.com/foo/foo_slug

Answer 1:

您应该能够通过添加以下内容到控制器的动作与状态301重定向:

redirect_to "http://host.com/foo/foo_slug", :status => 301

请参阅API文档redirect_to详细信息。

而且应该与重定向大写的URL以小写的版本没有问题,虽然这可以通过在HTTP服务器层的东西来更好地处理,如Apache mod_rewrite的规则。



Answer 2:

对于301重定向写在你的控制器这样的代码:

头[“状态” =“301永久移动”

redirect_to的“ http://host.com/foo/foo_slug ”#你的情况

而对于第二个问题,使用大写或者如果你所提到的硬编码网址下来的情况。

否则,通过将整个URL字符串中使用Ruby插值



文章来源: Ruby on Rails 301 redirection