Rails 3.2.3 Asset Pipeline预编译什么都不做

时间:2012-05-04 16:48:26

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

我可以使用Ruby 1.9.2在OSX和Windows上重现此问题:

我有一个简单的Rails 3.2.3应用程序,我正在尝试预编译assetpipeline,但资产:precompile什么都不做。也不抱怨。

以下是我所做的:

  1. 使用RVM创建一个新的干净的gemset,称之为rails32
  2. 安装rails:gem install rails -v 3.2.3
  3. 创建虚拟脚手架:rails g脚手架测试名称:string
  4. 迁移prod db:rake db:migrate RAILS_ENV = production
  5. 在prod:rails s -e production
  6. 中运行服务器

    此时我得到的资产没有预编译异常,这是我所期待的。然后:

    我运行rake资产:预编译RAILS_ENV =生产

    它运行没有错误并结束。

    之后,我的应用程序在HTML中有指纹资产,但它们在任何地方都不存在。

    有什么想法吗?我认为这是使用assetpipeline最简单的形式。

1 个答案:

答案 0 :(得分:0)

默认情况下,Rails希望高负载服务器(如Apache或nginx)在生产模式下提供静态资产。如果您真的不想在这样的服务器后面运行您的应用程序,请在config / environment.rb文件中将config.serve_static_assets更改为true