1

私の環境は

  • レール (4.0.0)
  • ルビー 2.0.0p247

nginxとユニコーンを使用しています。

app/views/layout/application.html.erb に次のコードがあります

<%= stylesheet_link_tag    "application", media: "all" %>
<%= javascript_include_tag "application" %>

ダイジェストなしで html タグを作成します。

<link href="/assets/application.css" media="all" rel="stylesheet" />
<script src="/assets/application.js"></script>

私は assets:precompile をこのように行います。

$ RAILS_ENV=production RAILS_GROUPS=assets bundle exec rake assets:precompile

ダイジェストでcssとjsを作成します。

application-9746528cde7f7180a473328fd274c2ce.js
application-c0773e3ecaf5e09f2eef46885eebefe1.css

私の Rails アプリケーションは css と js を読み込めません。

もちろん、 http://example.com/assets/application-c0773e3ecaf5e09f2eef46885eebefe1.cssにアクセスできます。

以下は私のconfig/environments/production.rbです

Myapp::Application.configure do
  config.cache_classes = true
  config.eager_load = true
  config.consider_all_requests_local       = false
  config.action_controller.perform_caching = true
  config.serve_static_assets = false
  config.assets.js_compressor  = :uglifier
  config.assets.compile = false
  config.assets.digest = true
  config.assets.version = '1.0'
  config.log_level = :info
  config.i18n.fallbacks = true
  config.active_support.deprecation = :notify
  config.log_formatter = ::Logger::Formatter.new
end

私の設定に間違いはありますか?

4

1 に答える 1

1

問題を解決しました。

ユニコーンの始め方が間違っています。そんな風にユニコーンを起動するときに RAILS_ENV を設定するのを忘れていました。

$ unicorn -c config/unicorn.rb -D 

ただし、正しい方法は次のとおりです

$ unicorn -c config/unicorn.rb -D -E production

ありがとう

于 2013-09-14T09:36:17.530 に答える