Ken*_*ins 7 nginx reverse-proxy 301-redirect
是否可以让 Nginx 缓存所有301重定向请求proxy_pass?
例如:
请求 #1:客户端 A 请求 /some/path -> 发送到proxy_pass-> 导致 301 重定向到/some/other/path-> nginx 缓存此响应,因为它是 301 重定向。
请求 #2:客户端 B 请求 /some/path -> nginx 返回缓存的 301 重定向到/some/other/path.
nginx 已经可以缓存 301 重定向。您可以使用proxy_cache_valid指令更改它们的缓存时间:
proxy_cache_valid 301 365d; # Cache permanent redirects for a whole year
Run Code Online (Sandbox Code Playgroud)
我发现 @Michael 的答案让我明白了大部分内容,但是当我打开 时,它会自动缓存带有和 的proxy_cache文件。所以我最终得到了这个解决方案。ExpiresCache-Control
proxy_cache_path /tmp/nginx levels=1:2 keys_zone=main-cache:8m max_size=1000m inactive=600m;
proxy_temp_path /tmp/nginx/tmp;
proxy_cache main-cache;
proxy_cache_valid 301 60m;
proxy_cache_key "$scheme://$host$request_uri";
proxy_ignore_headers X-Accel-Expires Expires Cache-Control;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12112 次 |
| 最近记录: |