Por que o Rails não encontrará meus bens?
uando no modo de produção, os trilhos parecem não encontrar nenhum ativo pré-compilado no pipeline de ativo
Estou usando o rails 3.2.0 e o ruby 1.9.3 executando no RVM no CentOS. Nenhum servidor da web adicional está sendo executado em conjunto com este aplicativo. O aplicativo foi atualizado recentemente para usar o pipeline de ativos, pois era originalmente um aplicativo Rails 3.0.
Depois de corre
rake assets:clean
rake assets:precompile
Vejo o conteúdo do hash em público / ativo, como seria de esperar. Os hashes no final dos arquivos correspondem aos que eu vejo na fonte da págin
o entanto, em tempo de execução, eis o que vejo para todos os ativos que o Rails tenta atende
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"):
Não estou me referindo à pasta em que cada ativo está alojado; todas as referências a ativos são assim:
//css:
.class {
background: url(asset.png) no-repeat;
}
//erb:
<%= image_tag "asset.png" %>
<%= link_to "page", :class => "class" %>
onfigurações pertinentes do pipeline do @set em 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
E, por último, configurações de ativos de config / application.rb:
config.assets.enabled = true
config.assets.version = '1.0'
O usuário que iniciou o processo do servidor Rails leu, gravou e executou permissões em público / ativos, portanto, não acho que seja um problema de permissão. Perdi uma etapa de configuração?
Edita
Eu notei que não há erros informando que os ativos não estão pré-compilados, então tentei acessar uma folha de estilo da página da Web anexando "/assets/application-892c6227e631daf9a8e041b1d4d002ec.css" no final do caminho do host:
http://www.myapp.com"/assets/application-892c6227e631daf9a8e041b1d4d002ec.css"
Isso funcionou e a folha de estilo foi abert