带有Nginx,Passenger,Rails的摘要的资产3

时间:2015-01-19 20:02:54

标签: ruby-on-rails nginx capistrano passenger

我的网站目前运行正常,但我无法弄清楚如何在名称中使用带有摘要的资产。它是一个Ubuntu服务器,我使用Capistrano部署到Rails 3.2,Nginx和Passenger。当我在Chrome中使用开发人员工具查看我们的生产网站的网络请求时,我发现它只加载application.js而不是application.js-a99ef8tne89....js。我想使用摘要版本,因为我最近对资产进行了大量更新。

我觉得问题可能是我的nginx配置但不确定......?

我在Rails中的production.rb:

# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false

# Compress JavaScripts and CSS
config.assets.compress = true

# Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = false

# Generate digests for assets URLs
config.assets.digest = true

我的nginx.conf文件:

server {
# PRODUCTION WEB SERVER
  listen 80;
  server_name app.mysite.com;
  root /home/deploy/my_app/current/public;
  passenger_enabled on;
  rails_env production;

  access_log  /var/log/nginx/my_app_production.access.log;
  error_log /var/log/nginx/my_app_production.error.log;

        location ^~ /assets/ {
                gzip_static on;
                expires max;
                add_header Cache-Control public;
        }
}

该网站已经启动并运行了一段时间,我只是无法弄清楚为什么没有使用资产的摘要版本。我已经检查过,资产的摘要版本被部署到正确的位置,manifest.xml文件也是正确的。也许这与上面的location ^~ /assets/ {块有关?感谢您的任何见解。

0 个答案:

没有答案