Ruby 生产模式下的疯狂资产
想知道如何配置Spree以在生产服务器上正确处理资产。与Rails 4.1.8一起使用Ruby 生产模式下的疯狂资产,ruby,ruby-on-rails-4,deployment,assets,spree,Ruby,Ruby On Rails 4,Deployment,Assets,Spree,想知道如何配置Spree以在生产服务器上正确处理资产。与Rails 4.1.8一起使用Spree 2.4.2 根据文档,我已将所有资产添加到供应商文件夹中。我还正确配置了all.css和all.js文件。在开发模式下,一切正常。网站看起来很棒,没有错误,所有的js和css加载都很好。进入生产服务器时,找不到css和js文件。该网站正在公共文件夹中查找它们 我没有配置任何特定的内容。默认Spree设置应处理我的资产。对Rails资产管道的一些研究让我运行: rake assets:compile
Spree 2.4.2
根据文档,我已将所有资产添加到供应商文件夹中。我还正确配置了all.css
和all.js
文件。在开发模式下,一切正常。网站看起来很棒,没有错误,所有的js和css加载都很好。进入生产服务器时,找不到css和js文件。该网站正在公共文件夹中查找它们
我没有配置任何特定的内容。默认Spree设置应处理我的资产。对Rails资产管道的一些研究让我运行:
rake assets:compile
这编译了大量的东西,包括一个all-xxxxxxxxxxxx.css
和一个all-xxxxxxxxxxxx.js
文件
然而,spree仍然在样式表/spree/frontend/
中寻找它们,而编译器将它们放在资产/spree/frontend/
图像是一个完全不同的故事
想想我可能做错了什么
另一方面,我将我的资产(包括已编译的css和js文件)复制到spree查找它们的位置,这样我就可以查看在生产服务器上是否一切正常。我第一次看网页的时候效果很好。然而,当我第二次查看同一个页面时,有明显的css问题。这几乎就像css在缓存后发生了变化一样。对此有何见解?您是否将顶级资产添加到application.rb中的config.assets.path?我碰巧知道默认的Spree安装没有这个 另外,您是否正在Heroku上部署?Heroku有一些特殊的考虑 此外,请阅读《资产管道指南》,并确保尽可能多地理解其中的内容。Spree并没有什么特别之处,它在资产管道方面和其他Rails应用程序有所不同