![](/img/trans.png)
[英]ActionView::Template::Error (rails.png isn't precompiled)
[英]Rails - image.png Isn't Precompiled
我正在尝试在 Amazon 的 EC2 服务器上部署一个 Web 应用程序,并且我在服务器上安装了代码。 一切看起来都在工作,但是当我进入主页时,我收到一条 500 错误消息,并且production.log
文件给了我以下错误:
ActionView::Template::Error (image.png isn't precompiled)
我试过运行rake assets:precompile
,
我已将config/environments/production.rb
的行更改为config.assets.compile = true
image.png
在public/assets/manifest.yml
但我仍然遇到同样的错误。
我正在运行 Rails 3.2.6 和 Ruby 1.8.7。
谢谢你的帮助!
运行rake assets:precompile RAILS_ENV=production
应该可以修复它。 如果您不提供任何RAILS_ENV
,Rails 假定它是development
我相信这是因为资产管道中的每个环境的行为都不同。 因此,作为一般规则,在生产中,始终使用 RAILS_ENV='production' 运行 rake 任务,并且您应该保持安全。
我正在使用 Redhat 的 Openshift,当部署在服务器上时,它会自动进入生产环境。 我也有同样的问题,但只在生产服务器上。
执行更改:
config/environments/production.rb 到 config.assets.compile = true
辛苦了。 此文件中还有另一个参数可以更改:
config.assets.precompile += %w[ *.png *.jpeg *.jpg *.gif ]
在服务器上部署后,您可以手动执行以下操作:
耙 RAILS_ENV=生产
或者,如果您使用像 Openshift 这样自动部署的服务器,则将考虑 production.rb 文件中的配置。
在config/application.rb
添加如下一行:
config.assets.precompile += ['image.png']
虽然,如果它在public/assets/images
你不应该这样做。
已解决 - 需要运行rake assets:precompile RAILS_ENV='production
而不仅仅是rake assets:precompile
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.