Carrierwave + Nginx - 从公共目录提供图像

时间:2013-09-20 11:29:36

标签: ruby-on-rails ruby ruby-on-rails-3 nginx asset-pipeline

如何配置NGINX从RAILS_ROOT / public / uploads提供上传的carrierwave文件? 例如:http://deckbuilder.justnetwork.eu//uploads/card/image/173/54.png

当config.serve_static_assets = true时,文件将被提供,但这很慢。我希望NGINX为他们服务。 CS,JS和图像正在服务中。

以下是我的NGINX配置的摘录:

  root /var/www/hsdeckbuilder/public;

    try_files $uri/index.html $uri.html $uri @app;

location @app {
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header Host $http_host;
  proxy_redirect off;
  proxy_pass http://localhost:8101;
  proxy_send_timeout 3600;
  proxy_read_timeout 3600;
}

1 个答案:

答案 0 :(得分:4)

尝试添加此配置:

location ~ ^/uploads/ {
  root /var/www/hsdeckbuilder/public;

  expires 24h; # or whatever you want to use

  add_header Cache-Control public;

  break;
}

我认为我们的服务器使用这样的东西。