在生产中找不到 Rails 资产



我正在使用AWS,Capistrano和Nginx部署一个rails应用程序。除了资产外,一切都很好。

应用程序正在查找正确的资产,但文件名具有错误的哈希值。

例:该网站正在寻找这个:http://35.167.19.250/assets/application.self-afbcf52bc2ee07a55f9597f238014e6c33f9199949f2397157e6d2dc72d3dd0e.css?body=1 加载资源失败:服务器响应状态为 404(未找到)但实际文件是已经预编译的:http://35.167.19.250/assets/application-fc0ac1dbdd04ee2388affcd3154154fb6c6d1b1a33298abb8cf281c15d4d4c56.css

知道我哪里出错了吗?

如果要预编译资产,则需要在生产模式下进行预编译,以便指纹匹配。

有关更多详细信息,请参阅此SO线程,但我认为您需要做的就是RAILS_ENV=production bundle exec rails assets:precompile

最新更新