排除查询字符串请求作为静态文件提供

排除查询字符串请求作为静态文件提供

后台运行着一个 mono fastcgi 服务器,前端运行着 nginx。我希望所有 css/js(除了两个特殊请求)都由 nginx 作为静态文件处理。

我的 nginx 配置如下

location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
            expires max;
            log_not_found off;
    }

location / {
                  root /srv/www/vhosts/abcde.de/;
                  fastcgi_index /;
                  fastcgi_pass 127.0.0.1:9000;
                  include /etc/nginx/fastcgi_params;
          }

现在/mini-profiler-includes.css?v=1.9.0.0应该/mini-profiler-includes.js?v=1.9.0.0由 fastcgi 服务器处理,而不是由 nginx 作为静态文件处理。我该怎么做?

答案1

像这样的附加正则表达式位置块可以做到这一点。

location ~* mini(.*)\.(js|css)$ {
                 fastcgi_index /;
                 fastcgi_pass 127.0.0.1:9000;
                 include /etc/nginx/fastcgi_params;
        }

但是 fastcgi 设置是多余的。

相关内容