En modo de producción, los rieles no parecen encontrar ningún recurso precompilado de la canalización de activos.¿Por qué Rails no encontrará mis activos?
Estoy usando rails 3.2.0 y ruby 1.9.3 corriendo dentro de RVM en CentOS. No se está ejecutando ningún servidor web adicional junto con esta aplicación. La aplicación solo se actualizó recientemente para usar la canalización de activos, ya que originalmente era una aplicación de rieles 3.0.
Después de ejecutar
rake assets:clean
rake assets:precompile
veo el contenido de hash en público/activos, lo que cabe esperar. Los valores hash al final de los archivos coinciden con los que veo en el origen de la página.
Sin embargo, en tiempo de ejecución, esto es lo que veo por cada rieles de activos trata de servir:
Started GET "/assets/application-892c6227e631daf9a8e041b1d4d002ec.css" for 75.149.58.169 at 2012-03-14 11:42:43 -0700
ActionController::RoutingError (No route matches [GET] "/assets/application-892c6227e631daf9a8e041b1d4d002ec.css"):
no me refiero a la carpeta que cada activo se encuentra en; todas las referencias a los activos se ven como los siguientes:
//css:
.class {
background: url(asset.png) no-repeat;
}
//erb:
<%= image_tag "asset.png" %>
<%= link_to "page", :class => "class" %>
de tuberías de Activos ajustes pertinentes en production.rb:
config.serve_static_assets = false
config.assets.enabled = true
config.assets.compress = true
config.assets.debug = false
config.assets.compile = false
config.assets.digest = true
Y, por último, la configuración de activos de config/application.rb:
config.assets.enabled = true
config.assets.version = '1.0'
El usuario que inicia el proceso del servidor de rieles ha leído, escrito y ejecuta permisos en public/assets, por lo que no creo que sea un problema de permisos. ¿Me perdí un paso de configuración?
Editar
me di cuenta de que no hay errores que indican que los activos no están precompilados, por lo que trataron de acceder a una hoja de estilo de la página web añadiendo "/assets/application-892c6227e631daf9a8e041b1d4d002ec.css" a la Fin de la ruta del host:
http://www.myapp.com"/assets/application-892c6227e631daf9a8e041b1d4d002ec.css"
Esto funcionó y se abrió la hoja de estilo.
Relacionados/duplicados: http://stackoverflow.com/questions/5760661/rails-favicon-ico-not-found –