【问题标题】:Unicorn working on development not in production独角兽致力于开发而不是生产
【发布时间】:2014-07-04 07:32:51
【问题描述】:

所以我正在关注 nginx/unicorn railscast 并且在让我的应用程序具有生产设置时遇到了问题(非常基本的应用程序,只有一个welcome#index 控制器和根路由 我运行以下

unicorn -c /home/jonlee/sites/localstyling/config/unicorn.rb

Unicorn 启动并在刷新浏览器时开始将所有活动记录到我的屏幕

当我添加生产环境标志时:

unicorn -c /home/jonlee/sites/localstyling/config/unicorn.rb -E production

Unicorn 启动,刷新浏览器时,控制台中未显示任何活动,但仍显示欢迎页面。检查我看到的日志:

Rendered welcome/index.html.erb within layouts/application (3.3ms)
Completed 200 OK in 133ms (Views: 24.1ms | ActiveRecord: 0.0ms)
Started GET "/stylesheets/application.css" for 127.0.0.1 at 2014-07-04 08:18:53 +0100
ActionController::RoutingError (No route matches [GET] "/stylesheets/application.css")
..
..
..

我猜我的 production.rb 文件是问题所在,我尝试设置 config.serve_static_assets = true 但这并没有帮助。我的production.rb如下:

Rails.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 = true
  config.assets.js_compressor = :uglifier
  config.assets.compile = true
  config.assets.digest = true
  config.log_level = :info
  config.i18n.fallbacks = true
  config.active_support.deprecation = :notify
  config.log_formatter = ::Logger::Formatter.new
  config.active_record.dump_schema_after_migration = false
end

我没有立即发现任何错误,我不明白为什么在运行 unicorn -E 生产时我没有从控制台获得任何输出,任何想法都将不胜感激。

【问题讨论】:

    标签: ruby-on-rails nginx unicorn


    【解决方案1】:

    仅将生产日志记录到 log/production.log,在此之前您需要预编译资产

    RAILS_ENV=production rake assets:precompile
    

    并在 /config/environments.production.rb 文件中设置

    config.server_static_assets = true
    

    【讨论】:

      猜你喜欢
      • 2012-09-10
      • 1970-01-01
      • 2013-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多