rails rackup create ruby-on-rails rack ruby-on-rails-4

ruby-on-rails - rackup - ruby rack 2



"No se necesita dicho middleware antes: Rack:: Lock(RuntimeError)" después de actualizar a Rails 4 (1)

Como sugiere el error ("No hay que insertar dicho middleware antes"), el problema está en el middleware que intenta insertar antes (y no en el middleware que intenta insertar , que era mi suposición inicial).

En Rails4, el subprocesamiento está habilitado de forma predeterminada, lo que elimina Rack::Lock .

Para encontrar un reemplazo, puede ejecutar rake middleware desde su directorio de proyectos de rieles y buscar algo cerca del inicio de la pila. Voy a elegir Rack::Runtime ya que está al principio de la pila, y parece bastante estándar.

Así que la configuración de reescritura es ahora:

config.middleware.insert_before(Rack::Runtime, Rack::Rewrite) do r301 %r{^/(.*)/$}, ''/$1'', :headers => {''Cache-Control'' => ''public, max-age=''+2.week.to_s} end

Recibo el siguiente error después de actualizar a Rails 4:

.../ruby-1.9.3-p125/gems/actionpack-4.0.0.rc2/lib/action_dispatch/middleware/stack.rb:125:in ''assert_index'': No such middleware to insert before: Rack::Lock (RuntimeError)

La línea ofensiva es mi regla de reescritura en rack de " eliminar barras diagonales ":

config.middleware.insert_before(Rack::Lock, Rack::Rewrite) do r301 %r{^/(.*)/$}, ''/$1'', :headers => {''Cache-Control'' => ''public, max-age=''+2.week.to_s} end

¿Algunas ideas?