【问题标题】:Spree assets in production mode生产模式下的大礼包资产
【发布时间】:2015-01-24 22:56:54
【问题描述】:

想知道如何配置 Spree 以在生产服务器上正确处理资产。将Spree 2.4.2Rails 4.1.8 一起使用。

根据文档,我已将所有资产添加到供应商文件夹中。我还正确配置了我的 all.cssall.js 文件。在开发模式下,一切正常。网站看起来很棒,没有错误,所有 js 和 css 都可以正常加载。进入生产服务器时,找不到css和js文件。该站点自然会在公用文件夹中查找它们。

我没有配置任何具体的东西。默认 Spree 设置应该处理我的资产。对 Rails 资产管道的一些研究让我跑了:

rake assets:compile

这编译了很多东西,包括一个all-xxxxxxxxxxxxxx.css 和一个all-xxxxxxxxxxxxx.js 文件。

但是,spree 仍在 stylesheets/spree/frontend/ 中寻找它们,而编译器将它们放入 assets/spree/frontend/

图片是一个完全不同的故事......

想到我可能做错了什么?

顺便说一句,我将我的资产(包括已编译的 css 和 js 文件)复制到 spree 正在寻找它们的位置,以便我可以查看生产服务器上的一切是否正常。我第一次查看页面时效果很好。然而,我第二次查看同一页面时,出现了明显的 css 问题。就好像 css 被缓存后发生了变化。对此有何见解?

【问题讨论】:

    标签: ruby ruby-on-rails-4 deployment assets spree


    【解决方案1】:

    您是否将顶级资产添加到 application.rb 中的 config.assets.paths ?我碰巧知道默认的 Spree 安装没有这个。

    另外,您是否在 Heroku 上进行部署? Heroku 有一些特殊的考虑。

    此外,请阅读资产管道指南,并确保您尽可能多地了解它。 Spree 在资产管道方面与其他 Rails 应用程序没有什么特别之处

    http://guides.rubyonrails.org/asset_pipeline.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-25
      • 2012-11-23
      • 2020-04-30
      • 1970-01-01
      • 2017-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多