在Rails 3.1生产模式中找不到预编译的CSS

当我在生产模式下启动rails时,它会预编译所有资产,但无法提供application.css资产。 我查看了public/assets ,预编译的application.css存在。

但是,每当我尝试从页面访问它时,我都会收到404。

这些是我用来启动服务器的说明,如果这可能有用的话。

 RAILS_ENV=production bundle exec rake assets:clean RAILS_ENV=production bundle exec rake assets:precompile rails -e production 

如果您希望Rails为静态资产提供服务,请将以下行添加到production.rb:

 config.serve_static_assets = true 

我知道允许apache或nginx为它们提供服务会更好,但是如果你使用的是rails独立服务器(或者至少它适用于瘦),这是有效的

事实certificate,rails不负责提供它预编译的静态资产。 您必须配置您使用的Web服务器(即nginx)为您而不是rails提供这些静态资产。 我希望这些文件更加清晰。

你能否确认一下

 <%= stylesheet_link_tag "application" %> 

在应用程序布局的头部分段而不是像:

  

这样可以确保包含预编译的application-xxx.css。