Rack - это промежуточное программное обеспечение для интерфейса приложения более высокого уровня (например, рельсы) с веб-сервером (например, монгрел).В rails вы можете заставить этот код работать, используя:
# config.middleware.use "Rack::ForceDomain", "mydomain.com"
Приложение является ссылкой на экземпляр Rails.Домен добавлен человеком, от которого вы получили этот код, это не стандартная инициализация Rack.
Вам не нужно переходить на уровень стойки для того, что вы делаете для этого.Лично я предпочитаю делать перезапись через nginx, но вы можете сделать это в rails 3.
В вашем файле config / rout.rb:
constraints(:host => /example.com/) do
root :to => redirect("http://www.example.com")
match '/*path', :to => redirect {|params| "http://www.example.com/#{params[:path]}"}
end
Это из http://railsdog.com/blog/2010/10/29/redirect-non-www-requests-the-rails3-way/