Heroku + Rack-Rewrite

Dav*_*vid 3 ruby rewrite rack ruby-on-rails heroku

仍然无法让这个工作...... Rails 3.1.3,Heroku的Cedar Stack上的Ruby 1.9.2.

尝试使用https://github.com/jtrupiano/rack-rewrite使http://域 301重定向到http://www.domain没有运气(应用程序正常,但根本没有重定向).

/config/initializers/rack_rewrite.rb(MyAppName实际上是正确的名称,domain.com是实际域名):

MyAppName::Application.config.middleware.insert_before(Rack::Lock, Rack::Rewrite) do
    r301 %r{.*}, 'http://www.domain.com$&', :if => Proc.new {|rack_env|
    rack_env['SERVER_NAME'] != 'www.domain.com'
    }
end
Run Code Online (Sandbox Code Playgroud)

添加到Gemfile:

gem 'rack-rewrite'
Run Code Online (Sandbox Code Playgroud)

做了"gem install rack-rewrite","bundle install".

没运气.

有任何想法吗?

更新:

我已经找到了问题的一部分.由于我只是尝试提供"index.html"和它的"/ style"文件夹,看起来"/ public"中的"index.html"会覆盖机架重写.如果我删除"index.html",重写工作......但现在我不知道在哪里放置文件,或者设置routes.rb默认指向index.html页面...任何帮助?

con*_*t47 5

更改

rack_env['SERVER_NAME'] != 'www.domain.com'
Run Code Online (Sandbox Code Playgroud)

rack_env['SERVER_NAME'] == 'domain.com'
Run Code Online (Sandbox Code Playgroud)