nginx的 - 使缓存与gzip压缩的.css文件

问题描述 投票:1回答:1

我有以下nginx的配置。如果我删除缓存的配置对CSS的一切工作和所有的css文件通过反向代理负载完美。但是当我把在高速缓存配置为导致404为我所有的CSS资源的CSS:

location ~* \.css {
          add_header Cache-Control public;
          add_header Pragma public;
          add_header Vary Accept-Encoding;
          expires 1M;
        } 

location / {
            proxy_pass http://localhost:8080;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header X-Forwarded-Proto $scheme;
             proxy_set_header X-Forwarded-Port $server_port;
        }
nginx nginx-location nginx-reverse-proxy
1个回答
2
投票

Nginx的选择单个location处理请求。这location需要完成。见how Nginx processes a request

location ~* \.css块丢失的proxy_pass声明。

所述proxy_set_header语句可以被移动到外部块和由两个location块继承。

例如:

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;

location / {
    proxy_pass http://localhost:8080;
}

location ~* \.css {
    add_header Cache-Control public;
    add_header Pragma public;
    add_header Vary Accept-Encoding;
    expires 1M;

    proxy_pass http://localhost:8080;
}
© www.soinside.com 2019 - 2024. All rights reserved.