nginx html页面缓存,页面缓存和nginx缓存
缓存存在的意义是为了减少后端的请求,减轻后端压力,一般页面的请求流程是这样的
请求流程
这里主要解决两个问题:
1.后端对浏览器缓存的指定
2.nginx启用缓存和清除缓存
浏览器缓存
在java后端的程序中也可以指定
1. 禁止缓存
public String page(HttpServletResponse response) {
response.setDateHeader("Expires", 0);
response.setHeader("Cache-Control", "no-cache, no-store");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires",-1);
return "page";
}
2.指定缓存问题
public void doGet(HttpServletRequest request, HttpServletResponse response) {
response.setContentType("text/html;charset=utf-8");
response.setDateHeader("Expires", System.currentTimeMillis() + 10000);
}
3.针对css和图片,默认是缓存的,只能通过链接加参数来避免缓存
nginx缓存
1.添加缓存模块
nginx默认是不缓存的,要想开启缓存,比如针对某个请求的缓存,或图片和css的缓存,得指定proxy_cache模块,这个模块是内置的,只需要做相应的配置就可以,如下,是针对一个/hello请求的配置
2.清除缓存
配置缓存时,默认会配置相应的过期时间,但一般我们有这种需要,就是不到过期时间时我们想清掉,针对这种常见的需求,nginx没有提供相应的官方模块,这时就需要第三方模块了,一般常用的第三方模块为proxy_cache_purge,git地址为
https://github.com/FRiCKLE/ngx_cache_purge
这个不提供windows版本,只有nginx版本,与nginx集成的时候要用/configure --add-module
编译安装,安装完成后在nginx.conf中做相应配置
这里的my_cache是上面配置的自己的缓存名称,要根据实际情况修改指定,
指定完成后重新启动nginx,如果要清除某个nginx缓存,可以在链接中添加purge例如
图片地址 http://localhost/a/a.img 清除图片地址 http://localhost/purge/a/a.img
手动访问下清除链接,就将缓存的内容清掉,下次访问时会请求服务器
nginx html页面缓存,页面缓存和nginx缓存相关推荐
- nginx缓存页面后,串会话问题的解决方案(转)
为什么80%的码农都做不了架构师?>>> nginx支持页面缓存,之前我的博客有介绍配置方案,昨天出了一个诡异的问题,别人的机器登录后,我的机器打开应用的首页会出现别人的用户信 ...
- openresty模板html页面,单页面部署去Html缓存 nginx/openresty
单页面nginx/openresty部署,去除Html缓存问题(设置客户端不缓存): server { listen 80; server_name xxxx.com; # etag off; # 负 ...
- nginx+redis 实现 jsp页面缓存,提升系统吞吐率
最近在开发的时候,发现之前APP客户端的一部分页面用的是webview交互,这些页面请求很多,打开一套试卷,将会产生100+的请求量,导致系统性能下降.于是考虑在最靠近客户端的Nginx服务器上做Re ...
- OpenResty实现LNMP的缓存前移(到达nginx前端层面)
前言 我们都知道Nginx有很多的特性和好处,但是在Nginx上开发成了一个难题,Nginx模块需要用C开发,而且必须符合一系列复杂的规则,最重要的用C开发模块必须要熟悉Nginx的源代码,使得开发者 ...
- 编译安装nginx并实现反向代理负载均衡和缓存功能
一.编译安装nginx 1.下载 [root@ns1 ~]# wget http://nginx.org/download/nginx-1.10.0.tar.gz 2.解压 [root@ns1 ~]# ...
- 编译安装nginx实现反向代理、负载均衡、缓存功能
一.编译安装nginx 1.下载 [root@ns1 ~]# wget http://nginx.org/download/nginx-1.10.0.tar.gz 2.解压 [root@ns1 ~]# ...
- windows使用nginx+memcached实现负载均衡和session或者缓存共享
windows使用nginx+memcached实现负载均衡和session或者缓存共享 两台server server1:115.29.186.215 windows2008 64位操作系统 ser ...
- nginx的防盗链,动静分离,缓存,负载均衡,反向代理
1.防盗链有两种实现方式 第一种采用了URL重写模块 location ~.*\.(jpg|gif|png)$ {valid_referers none blocked *.demo.com demo ...
- Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化......
干货!文章有点长,建议先收藏 引言 一.性能怪兽-Nginx概念深入浅出 二.Nginx环境搭建 三.Nginx反向代理-负载均衡 四.Nginx动静分离 五.Nginx资源压缩 六.Nginx缓冲区 ...
最新文章
- 计算机开启时提示键盘错误,电脑开机出现异常提示keyboard not found的故障原因及解决方法_电脑故障...
- 012_Vue计算属性
- 关于单CPU,多CPU上的原子操作
- Intel 64/x86_64/IA-32/x86处理器 - 通用指令(1) - 数据传输指令
- 《废柴》系列 - What?废柴,你不会下载Google浏览器插件,Are you kidding???
- android 加密显示银行卡号,Android银行卡输入框与卡号显示
- cms查询系统(二)json形式参数的设计与解析
- Mongodb中 Documents文档说明
- GET 和 POST 有什么区别?
- Debian和Ubuntu版本比较
- linux怎么保存7天内文件,Linux七天系列(第七天)—文件系统管理
- 基于WFP的windows驱动对TCP数据的抓取,修改以及注意事项
- 相对路径与绝对路径的写法
- PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes—2017(笔记)
- 【对软件项目的一些理解】多维团队分工合作模式
- 学习使用solr时遇到的一些问题,记录
- [1.24] T3-人品问题
- 属性和方法的区别是什么_痤疮和痘痘有什么区别?长痘痘之后3种护肤方法,痤疮3种治疗方式...
- 数组大小分配(动态内存分配)
- 苹果手机html吊起拍照,苹果手机拍照教程,教你如何用iPhone拍出大片