Файл с именем index.html
в вашей общей папке всегда будет переопределять вашу маршрутизацию.
Однако вы можете переименовать index.html
, указать root
на свой контроллер home
, и в контроллере просто наберите redirect_to '/new_name.html'
, если пользователь не вошел в систему.
Edit:
Поскольку запрашивающий использовал devise и фильтровал все действия в своем домашнем контроллере, этот второй редирект не работал. Фильтры авторизации отправляли его на страницу входа (это действие по умолчанию, когда в разрешении отказано).
Мы решили это, не фильтруя действие index
и, таким образом, расчистив путь для нашего собственного перенаправления:
# home controller
before_filter :authenticate_user!, :except => [:index]
before_filter :redirect_to_marketing
# stuff
private
def
unless user_signed_in?
redirect_to '/marketing.html'
end
end