在Heroku上使用Rails 3.2.3进行机架重写

Ode*_*ded 3 rack middleware ruby-on-rails heroku rack-middleware

我正在尝试在Heroku雪松堆栈上为Rails 3.2.3设置机架重写,并且在任何地方我都会看到它添加如下内容:

config.middleware.insert_before(Rack::Lock, Rack::Rewrite) do
  # rewrite rules
end
Run Code Online (Sandbox Code Playgroud)

但是试图在Heroku上运行它会给我一个错误:

`assert_index': No such middleware to insert before: Rack::Lock (RuntimeError)
Run Code Online (Sandbox Code Playgroud)

确实运行"heroku rake middleware"在开发时没有显示Rack :: Lock在Rack :: Lock就在那里.

第一个问题是Heroku上没有Rack :: Lock的原因,这是正确的吗?第二个问题,如果不是在Rack :: Lock之前,我应该在哪里插入Rack :: Rewrite?

谢谢!

Jes*_*ott 6

如果你使用线程安全!在生产中启用,没有Rack :: Lock ......所以相反:

config.middleware.insert_before(Rack::Runtime, Rack::Rewrite) do
  #your coolness here
end
Run Code Online (Sandbox Code Playgroud)