侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

Windows系统 NginX 配置缓存

2023-11-13 星期一 / 0 评论 / 0 点赞 / 48 阅读 / 5633 字

NginX设置缓存功能 版本:Nginx-1.8.1版本; 操作系统:适用于所有Windows系统; 首先介绍其功能:当用户第一次访问页面时,由于 nginx的缓存中没有,会访问upstream 服

NginX设置缓存功能

版本:Nginx-1.8.1版本;

操作系统:适用于所有Windows系统;

    首先介绍其功能:当用户第一次访问页面时,由于 nginx的缓存中没有,会访问upstream 服务器相应的文件,第二次再访问的时候,由于已经缓存在了nginx的proxy_cache中,Nginx当接收到请求之后就不会将请求传送到 upstream 服务器里面了。

 

1.    主要效果,明显能够看出访问时间的优化。

本地做了缓存加静态文件分离后               本地没做缓存只做了静态分离

                         服务器没做缓存没做静态分离

PS:当然也有可能是因为网络延时的原因,因为我测试的是访问本地的连接,服务器上的部署尚未做缓存与静态分离等等。如果你觉得有点鸡肋的话就不必要看下去辣~

1).先来看测试的访问时间:用到 FireFox 浏览器

        1).在本地测试,配置了 Nginx缓存后;第一次访问所需要的总时间:20~30ms 毫秒

        2). 按 F5 刷新后,可以明显的看出来,刷新不再直接访问服务器,而是在缓存中直接读取。访问时间为 0~5ms 毫秒

        3).在本地文件夹中能看到缓存文件

2).在云平台上部署的项目访问时间

        1).无论刷新多少次,访问的时间总是在20~30ms 毫秒之间。虽说问题不是很严重,但当用户量大并发访问的时候就能明显体现出来

 

2.实现部署配置

    Nginx 文件所在位置:E:/ServerTool/nginx-1.8.1

    打开 E:/ServerTool/nginx-1.8.1/conf/ nginx.conf 文件,进行编辑

      1).添加缓存设置如下:

PS:注意该语句只能在 Http 节点下设置!而且路径要设置对,否则 Nginx 会报错无法启动其错误日志信息如下:

     2). 随后在相应需要配置添加参数调用缓存

         PS:该参数只能在 location 节点下设置!参数都有其解析,很简单就能完成所需要的配置

    3).启动测试

     

不报错,检测任务管理器是否成功开启

启动浏览器访问改项目的站点,利用浏览器自带的F12去查看

显示是:HIT表示成功开启;MISS则是没有缓存文件

 

3.给出完整的缓存的配置信息

# 缓存目录地址不能定义在server块内,必须定义在http快中 配置一个cache空间proxy_cache_path /ServerTool/nginx-1.8.1/cache levels=1:2 keys_zone=SLoan:500m inactive=10d max_size=10g;proxy_temp_path /ServerTool/nginx-1.8.1/cache/temp;# 缓存# 调用缓存 SLoan为缓存名称proxy_cache SLoan;# 添加服务器地址到报文头部add_header X_Via $server_addr;# 添加缓存状态到报文头部add_header X-Cache $upstream_cache_status;proxy_cache_key $host$uri$is_args$args;# 定义缓存失效时间,200 是状态码,即缓存状态码是200请求成功的数据,10M是10分钟,即缓存的数据超时时间为10分钟,10分钟后过期,不定义则缓存不生效proxy_cache_valid 200 302 3h; #200 302状态码保存3小时proxy_cache_valid 301 3h; #状态保存时间为3小时proxy_cache_valid any 1m; #其他保存时间为 1分钟       

至此,所有配置均已完成,当然以上仅为基本配置方式~

由于我的nginx.conf还有很多杂七杂八的配合就不完全放出来了~注意好摆放的位置逐步配置则可!

广告 广告

评论区