301重定向导致rails中的重定向循环

时间:2016-02-13 09:22:40

标签: ruby-on-rails heroku url-redirection

我想重定向我的heroku域名" mighty-reef-1550.herokuapp.com"到我的子域" www.foo.com"避免SEO重复惩罚。

为此,我试图从我的routes.rb文件

进行301重定向

这就是我所做的:

    constraints(:host => /https://mighty-reef-1550.herokuapp.com/) do
      match "/(*path)" => redirect {|params, req| "https://www.foo.com/#{params[:path]}"},  via: [:get, :post]
    end

这不起作用并给我一个重定向循环。 我做错了什么?

1 个答案:

答案 0 :(得分:1)

我认为这是因为您在主机中包含了协议。尝试:

constraints(:host => /mighty-reef-1550.herokuapp.com/) do

您也可能想要重定向到

//www.foo.com/#{params[:path]}

如果您对保留协议感兴趣(HTTPS - > HTTPS,HTTP - > HTTP)