перенаправить на root_path - PullRequest
1 голос
/ 01 июня 2011

У моего маршрута root установлено значение:

root :to => "posts#index", :locale => :en

Но / en / posts / и / en / posts / index по-прежнему доступны, показывая «дублированный» контент из корневого пути. Я хотел бы перенаправить на root_path, если используется один из этих путей.

Таким образом, я могу избежать дублирования контента в поисковых системах, и у моих пользователей будет более согласованный подход: ресурс живет только в одном месте и только в одном месте (REST).

Ответы [ 2 ]

1 голос
/ 01 июня 2011

Вы можете отключить URL-адрес posts / index, отредактировав ресурс posts в вашем файле rout.rb, чтобы он выглядел следующим образом:

resources :posts, :except => :index

Если из-за этого возникают проблемы с перенаправлением, прочтите руководства по rails намаршрутизация, в частности раздел 3.12 Перенаправление

0 голосов
/ 29 июля 2012

Недавно я нашел решение этой проблемы с помощью следующего в моем файле rout.rb:

get "/en/posts" => redirect("/")
resources :posts
root :to => "posts#index", :locale => :en

При запросе к / en / posts 301 перенаправляется (навсегда перемещается) в корневой путь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...