nginx配置反向代理缓存
说明
最近运维一个网站里面含有不经常变化的小图片,而每次请求都需要调用file接口获取不太合适。所以就想利用nginx的反向代理缓存来减轻服务接口的请求压力。
工作原理
Nginx反向代理缓存,当客户端向Nginx服务器发送请求时,nginx根据请求的URI可以加一层缓存,可缓存动态请求,当缓存存在时Nginx直接将缓存返回给客户端,而不请求服务接口,这样可以使服务器压力降低。
如何配置?
- 在http节点下添加
# 反向代理缓存配置client_body_buffer_size 512k;proxy_connect_timeout 5;proxy_read_timeout 60;proxy_send_timeout 5;proxy_buffer_size 16k;proxy_buffers 4 64k;proxy_busy_buffers_size 128k;proxy_temp_file_write_size 128k;proxy_temp_path D:/tmp;proxy_cache_path D:/tmp/cache levels=1:2 keys_zone=cache_one:200m inactive=7d max_size=50g;
proxy_cache_path:表示生成的缓存文件存放的路径,该路径是预先就要创建好的
levels=1:2 : 设置在相对于path指定目录的第几级hash目录中缓存数据,levels=1,表示一级hash目录,levels=1:2,表示两级hash目录。
- 在server节点下添加
location ~ / {proxy_pass http://127.0.0.1:9001;if ($request_uri ~ ^/(article|category)) {set $cookie_nocache 1;}if ($request_uri = /) {set $cookie_nocache 1;}proxy_cache cache_one;proxy_cache_valid 200 304 7d; #正常状态缓存时间7天proxy_cache_key $host$uri$is_args$args;proxy_no_cache $cookie_nocache $arg_nocache $arg_comment;proxy_no_cache $http_pargma $http_authorization;add_header Nginx-Cache "$upstream_cache_status";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_pass 配置的反向代理。
proxy_cache cache_one; 指定用哪个缓存,这地方就是上面配置的。
两个if条件表达式过滤了部分请求不缓存。
如何确定已生效?
重启nginx,刷新请求发现缓存路径下已生成了文件:
未命中缓存的请求
已命中缓存的请求
nginx配置反向代理缓存相关推荐
- Nginx配置反向代理访问内部服务
Nginx可以提供高性能的反向代理服务,将客户机请求转发给内部网络中隐藏在幕后的真正的服务器,并将从服务器上得到的结果数据返回给Internet上请求的客户端,在用户看来,Nginx扮演的就是真实服务 ...
- 【推荐】如何用 Nginx 构建反向代理缓存服务器?
作者:一盏烛光,贤牛特邀工程师. 防伪码:曾经沧海难为水,除却巫山不是云. 代理服务可简单的分为正向代理和反向代理: 正向代理: 用于代理内部网络对 Internet 的连接请求(如×××/NAT), ...
- Windos环境用Nginx配置反向代理和负载均衡
Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...
- nginx配置反向代理和负载均衡完结篇
具体安装配置参考之前的文章 https://blog.csdn.net/weixin_44001965/article/details/102723855 文章目录 一,nginx操作的常用命令 ng ...
- nginx配置反向代理浏览器输入地址后点击登陆URL发生变化的处理
今天项目上需要再用NGINX配置反向代理需求如下: 现在有A服务器只做为nginx服务器,B服务器作为代码服务器,用户访问A要实际上访问的是B的程序. 处理方式就是用nginx的方向代理处理即可: 打 ...
- nginx配置反向代理过程中遇到的坑 配置好之后报404问题
项目场景: nginx配置反向代理路径 问题描述 在配置nginx反向代理的过程中,路径可以匹配上但是一直报404,找不到路径.nginx配置如下: location /business {add_h ...
- Nginx配置反向代理,一篇搞定!
欢迎关注方志朋的博客,回复"666"获面试宝典 来源:blog.csdn.net/zxd1435513775/article/ details/102508463 一.引言 其他话 ...
- ci框架 反向代理配置_《网站建设》Nginx配置反向代理
[网站克隆] nginx反向代理镜像站点做贼站谈Nginx,实力是反向代理,因为研究肉鸡刷Adsense使用,花了1-2天来弥补Nginx的知识,发现有搜索. [网站克隆] nginx反向代理镜像站点 ...
- windows版 nginx配置反向代理实例教程 跳转tomcat和php网站
抄自 https://www.cnblogs.com/j-star/p/8785334.html 个人理解 nginx端口设置为80,简称n tomcat端口设置为其他,例如8080,简称t php网 ...
最新文章
- mongoose小试牛刀
- 计算机视觉--Python实现人体姿态估计
- Kafka 是如何保证数据可靠性和一致性
- CF981E Addition on Segments 线段树分治 + bitset优化
- java ee的小程序_Java EE调度程序
- 【数据仓库】什么是数据仓库?
- 【java笔记】常用函数式接口(3):Predicate接口
- [转载] 字符串的startsWith和endWith方法
- Artifactory安装配置
- 搜索的逻辑即是用户的逻辑
- 搭建Struts框架
- linux 系统语言设置字体,Linux语言和字体的自定义设置
- 汇编语言指令系统——控制转移类指令
- Windows10下安装使用Bochs-2.6.11
- idea插件JRebel激活
- Python-开根号的几种方式
- 学习笔记:中国大学MOOC《计算机程序设计C++》第3周单元测试
- 编码、学习、玩耍一条龙,这是我看过最良心的「游戏编程」网站,没有之一!...
- Linux搭建web网站综合实验
- reverse方法(自己实现)