我的路线 root 设置为:
root :to => "posts#index", :locale => :en
但仍可访问/ en / posts /和/ en / posts / index,显示root_path中的“重复”内容。如果使用其中一个路径,我想重定向到root_path。
这样,我可以避免搜索引擎中的重复内容,并且我的用户可以获得更一致的体验:资源只存在于一个地方和一个地方(REST)。
答案 0 :(得分:1)
您可以通过编辑routes.rb文件中的posts资源来关闭帖子/索引网址,如下所示:
resources :posts, :except => :index
如果这会给您带来重定向问题,请阅读路由指南中的导轨指南,特别是第3.12 Redirection部分
答案 1 :(得分:0)
我最近通过在routes.rb中使用以下内容找到了解决此问题的方法:
get "/en/posts" => redirect("/")
resources :posts
root :to => "posts#index", :locale => :en
对/ en / posts的请求被301重定向(永久移动)到根路径