linux – 如何优化此nginx代理缓存配置?
发布时间:2020-12-14 00:05:14 所属栏目:Linux 来源:网络整理
导读:我想在Nginx反向代理中缓存所有* .html文件,所以我添加了配置: # Original configurationlocation = / { proxy_pass http://192.168.12.12:91; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $
我想在Nginx反向代理中缓存所有* .html文件,所以我添加了配置:
# Original configuration location = / { proxy_pass http://192.168.12.12:91; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } # Added for cache location ~ .html { proxy_pass http://192.168.12.12:91; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid 200 301 302 1m; proxy_cache_valid any 1m; expires 1m; } 重复两次proxy_pass和proxy_set_header感觉不好 我该如何优化呢?谢谢! 解决方法
嵌套位置是使用正则表达式创建位置的正确方法,它应该可以实现您想要实现的目标.
location / { proxy_pass http://192.168.12.12:91; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location ~* .html${ proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid any 1m; expires 1m; } } 我不完全确定嵌套位置是否真的使用外部位置块中的选项.如果没有(我现在无法测试),您可以创建单独的文件. location / { include proxy.conf; location ~* .html${ include proxy.conf; proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid any 1m; expires 1m; } } proxy.conf proxy_pass http://192.168.12.12:91; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 这肯定会起作用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |