我想做一個301重定向,但我想要一個捕獲所有。我目前擁有的是,該域名託管在Wordpress上,我擁有頁面和帖子。如果這些頁面或帖子不存在於我的新rails應用程序中,我想重定向到主頁。301重定向使用只是路由,沒有控制器
我使用Heroku來承載這個,所以我不能用Web服務器來做,據我所知,所以我需要在Rails裏面做。我本身沒有控制器,但是我可以搶劫頁面的控制器並使用它。有什麼辦法可以在路徑文件的底部添加一些內容:「如果此頁面不存在,請將其重新路由到主頁」?
我想做一個301重定向,但我想要一個捕獲所有。我目前擁有的是,該域名託管在Wordpress上,我擁有頁面和帖子。如果這些頁面或帖子不存在於我的新rails應用程序中,我想重定向到主頁。301重定向使用只是路由,沒有控制器
我使用Heroku來承載這個,所以我不能用Web服務器來做,據我所知,所以我需要在Rails裏面做。我本身沒有控制器,但是我可以搶劫頁面的控制器並使用它。有什麼辦法可以在路徑文件的底部添加一些內容:「如果此頁面不存在,請將其重新路由到主頁」?
由於從docs,3.10你可以使用先進的約束和重定向,如:
matches '*any_path' => redirect('/')
要確保你的頁面的路線,因爲這路由匹配的所有路徑後添加這個全球航線。
馬克的答案似乎並不適用於我,但它指出我是正確的直接,所以我給了他一個綠色的複選標記。
是我最後不得不做的是以下內容添加到我的routes.rb:
match "*rest", :to => "pages#redirect"
,然後在我的網頁控制器執行以下操作:
def redirect
redirect_to root_path
end
但這是否提供301重定向還是什麼類型的重定向?我無法在您鏈接的文檔中找到它。 –
根據http://www.camelpunch.com/web-development/tutorials/301-redirect-with-rails/這實際上創建了301。 –