nginx 设置多个 静态资源代理
时间: 2023-08-23 14:05:39 浏览: 242
nginx 多个location转发任意请求或访问静态资源文件的实现
5星 · 资源好评率100%
在 nginx 中设置多个静态资源代理可以通过在配置文件中添加多个 location 段来实现。每个 location 段都可以针对不同的静态资源类型,例如图片、CSS、JavaScript 等,设置不同的代理规则。
以下是一个示例配置文件,其中设置了两个 location 段来代理不同类型的静态资源:
```
server {
listen 80;
server_name example.com;
location /images {
proxy_pass http://static.examplecdn.com;
proxy_set_header Host static.examplecdn.com;
proxy_cache_bypass $http_pragma;
proxy_cache_revalidate on;
expires 1h;
}
location /assets {
proxy_pass http://assets.examplecdn.com;
proxy_set_header Host assets.examplecdn.com;
proxy_cache_bypass $http_pragma;
proxy_cache_revalidate on;
expires 1h;
}
# 其他配置...
}
```
在上面的配置文件中,第一个 location 段代理了 /images 路径下的静态资源,将其转发到 static.examplecdn.com,同时设置了缓存和过期时间。第二个 location 段代理了 /assets 路径下的静态资源,将其转发到 assets.examplecdn.com。
需要注意的是,如果多个 location 段的匹配规则存在重叠,那么 nginx 会采用最长匹配原则,即匹配路径最长的 location 段。因此在设置多个静态资源代理时,需要避免出现路径重叠的情况。
阅读全文