【问题标题】:Nginx fall-through urls with caching带有缓存的 Nginx 直通 url
【发布时间】:2015-06-05 23:31:53
【问题描述】:

我有一个 Rails 应用程序,它的路由与首次访问时生成的静态文件匹配。

如果我在我的 site.conf 中将此块注释掉,一切正常:

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

有没有一种方法可以两全其美,并且只有在实际文件存在时才激活 location 块,如果不存在则退出?也许在里面添加try

【问题讨论】:

  • 你可以使用try_files
  • 问题解决了吗?
  • 好的,谢谢!在 location 块中添加了另一个 try_files。

标签: ruby-on-rails nginx unicorn


【解决方案1】:

基于“本地磁盘静态文件与后端动态响应”逻辑提供响应的最佳实践之一是 try_files:

location ^~ /uploads/ {
  gzip_static on;
  expires max;
  add_header Cache-Control public;
  try_files $uri @backend;
}

location @backend {
  proxy_pass ...
}

参见官方文档here

【讨论】:

    猜你喜欢
    • 2018-03-04
    • 1970-01-01
    • 2017-02-16
    • 2016-12-31
    • 1970-01-01
    • 1970-01-01
    • 2013-05-22
    • 1970-01-01
    • 2021-10-04
    相关资源
    最近更新 更多