【问题标题】:Locomotivecms Assets in ProductionLocomotivecms 生产中的资产
【发布时间】:2013-09-04 21:57:07
【问题描述】:

我已经在 locomotivecms google 群组中问过这个问题,但还没有得到任何有用的回复。所以,在这里尝试一下。我感觉这个问题不仅仅是一个轨道问题,而是与 locomotivecms 引擎的实现方式有关。

我按照此处的说明安装了 locomotivecms 应用程序 - http://doc.locomotivecms.com/guides/get-started/install-engine

应用在开发模式下运行良好。

然后我预编译了资产并在生产模式下启动它 (bundle exec unicorn_rails -E production)。现在,当我在浏览器中打开应用程序时,不会呈现样式表。我已经检查了公共/资产,并且浏览器请求的指纹样式表存在于那里。然而它没有正确呈现。这是 chrome 视图资源显示的内容:

样式表看起来好像包含 html。如果我从 public/assets 文件夹打开它,它包含 css。我认为机车正在拦截请求并且以某种方式不返回 css。 Locomotive 是开源的,他们的代码在 github - https://github.com/locomotivecms/engine

【问题讨论】:

    标签: ruby-on-rails asset-pipeline locomotivecms


    【解决方案1】:

    问题不在于 Locomotivecms,而是我不知道的轨道问题。我在 production.rb 中有以下内容:

    config.serve_static_assets = false

    如果您在生产环境中在 Nginx 或 Apache 中运行您的应用程序,则此设置是正确的。在这种情况下,他们为公共资产提供服务。但是,如果您只是在生产中的 Rails 服务器上运行您的应用程序,例如 unicorn、webbrick、thin 等,那么您需要将此设置设置为 true,以便 Rails 服务器从公共文件夹中提供资产。我将此设置为 true,启动服务器 (bundle exec unicorn_rails -E production),资​​产服务正常。

    关于 config.serve_static_assets 的更多解释可以在这里找到:http://guides.rubyonrails.org/configuring.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-04
      • 2015-02-23
      • 1970-01-01
      • 2015-08-23
      相关资源
      最近更新 更多