the rails present not images asset application ruby-on-rails asset-pipeline

ruby on rails - rails - Rieles 3.1.3: tratando de ejecutarse localmente en producción, la canalización de activos no funciona



the asset is not present in the asset pipeline (1)

Rails no sirve activos estáticos en modo de producción por defecto. Si desea deshabilitar esto y servir los activos estáticos, actualice su archivo config/environments/production.rb con esto:

config.serve_static_assets = true

El razonamiento detrás de la configuración predeterminada de Rails es que asume que se ejecutará detrás de un servidor web estándar en modo de producción (Apache, Nginx, etc.) que luego enviará las solicitudes a su aplicación Rails. Dado que los activos están precompilados, Apache / Nginx / etc. Puede atenderlos directamente sin necesidad de hablar con sus procesos de Rails.

Mi aplicación funciona bien en modo de desarrollo.

Cuando ejecuto en modo de producción usando RAILS_ENV=production rails s ninguno de mis archivos .css o .js se carga. ( RAILS_ENV=production bundle exec rake assets:precompile precompilación de activos, usando RAILS_ENV=production bundle exec rake assets:precompile ).

El registro de webrick muestra:

ActionController :: RoutingError (Ninguna ruta coincide con [GET] "/assets/application-a73ce43be7bf75953cd0c60b2b4a7eb0.js"):

y

ActionController :: RoutingError (Ninguna ruta coincide con [GET] "/assets/application-986dd79830088c416c1632c12999ec69.css"):

Los archivos se compilaron (de acuerdo con el archivo log / production.log) y mi directorio public / asset muestra esos archivos con y sin la huella digital:

ls public/assets application-986dd79830088c416c1632c12999ec69.css application-986dd79830088c416c1632c12999ec69.css.gz application-a73ce43be7bf75953cd0c60b2b4a7eb0.js application-a73ce43be7bf75953cd0c60b2b4a7eb0.js.gz application.css application.css.gz application.js application.js.gz