Nginx 决策浏览器缓存是否有效
expires指令是告诉浏览器过期时间
syntax:expires [modified] time; eopch | max | off;
default : off
context :http,server,location,if in loacation
max :表示这个缓存永久有效
Expires : Thu ,31 Dec 2037 23:55:55 GMT
这个时候头部 Cache-Control: max-age=315360000 (秒相当于10年)
off : 表示 不会添加或修改expires和Cache-Control字段
eopch:表示不缓存但是会告诉浏览器 最小时间
Expires : Thu ,31 Dec 1970 23:55:55 GMT
Cache-Control: no-cache
time:设定具体时间,可以携带单位
一天内具体时刻可以加@ 比如下午6点半 @18h30m
设定好Expires,自动计算Cache-Control
如果当前时间未超过当天的time时间,则Expires到当天time,否则是第二天的time时刻
正数
设定Cache-Control时间 计算出Expires
负数
设定Cache-Control:no-cache 计算出Expires
location /{ #expires 1h;#配置过期时间是1小时 #expires -1h; expires @20h30m; }
我们查看头部看到的数据
if_modified_since 指令
syntax : off | exact | before;
default : exact;
contaxt : http,server,location
off : 忽略请求中的 if_modified_since 头部
exact : 精确匹配 if_modified_since 头部与 last_modified的值
before:若 if_modified_since 大于等于 last_modified 则返回304;
Nginx 决策浏览器缓存是否有效的更多相关文章
- Nginx与浏览器缓存
Nginx与浏览器缓存 一.浏览器对缓存的处理:Internet选项 ★ 控制请求服务器策略:是忽略资源的缓存策略的情况下额外强制请求服务器的意思. ★ 检查存储的页面较新版本 1.每次访问网页时 ...
- nginx,控浏览器缓存,前端优化方案
1,困惑 做web项目,对于开发者来说,一个最头痛的问题就是浏览器缓存,有缓存,js更改了,html更改了,发布服务器以后用户往往无法通过浏览器访问到最新的类容,需要用户主动去刷新页面, 因为一直做企 ...
- nginx 与 浏览器缓存
一.本地静态文件 location /html/{ rewrite ^(html/.*)$ /$1 break; root /data/static; expires 12h; etag off; i ...
- # Nginx设置浏览器缓存
配置语法 在location或if段里,来写. 格式 expires 30s; expires 30m; expires 2h; expires 30d; (注意:服务器的日期要准确,如果服务器的日期 ...
- nginx 禁止浏览器缓存
如果我们使用Nginx作为静态资源服务器,那么可以使用expires进行缓存控制. location /{ expires 1s; } 如果Get页面未做任何修改,服务器就是对客户端返回304 Not ...
- Nginx实践篇(2)- Nginx作为静态资源web服务 - 控制浏览器缓存、防盗链
一.控制浏览器缓存 1. 浏览器缓存简介 浏览器缓存遵循HTTP协议定义的缓存机制(如:Expires;Cache-control等). 当浏览器无缓存时,请求响应流程 当浏览器有缓存时,请求响应流程 ...
- Nginx使用Expires增加浏览器缓存加速(转)
转载自:Nginx使用Expires增加浏览器缓存加速 Nginx可以更改HTTP头部,这个是Web服务器必须的,当然Nginx更可以支持在HTTP头部中添加Expires等相关信息,增强浏览器缓存, ...
- 【nginx网站性能优化篇(1)】gzip压缩与expire浏览器缓存
gzip压缩 概述 网页在服务器端经过了gzip或者其他格式的压缩后的输出明显减少了content-length字节,当访问过百万时,这些减少的字节就会变为客观的流量给节约下来;从而减轻服务器的压力以 ...
- nginx优化--gzip压缩与expire浏览器缓存
gzip压缩 概述 网页在服务器端经过了gzip或者其他格式的压缩后的输出明显减少了content-length字节,当访问过百万时,这些减少的字节就会变为客观的流量给节约下来;从而减轻服务器的压力以 ...
随机推荐
- VC++全屏
Win32类型的全屏代码: 1. 去掉menu ATOM MyRegisterClass(HINSTANCE hInstance) { WNDCLASSEX wcex; wcex.cbSize = s ...
- Python全栈开发之路 【第十七篇】:jQuery的位置属性、事件及案例
位置属性 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...
- Python-生成器_36
#生成器函数 def generator(): print(1) return 'a' ret = generator() print(ret) #只要含有yield关键字的函数都是生成器函数 # y ...
- H5 13-子元素选择器
13-子元素选择器 p{ color: red; } */ /* #identity>p{ color: blue; } */ div>ul>li>p{ color: purp ...
- C. Nastya Is Transposing Matrices
链接 [https://codeforces.com/contest/1136/problem/C] 题意 给你两个规模一样的矩阵 问是否可以通过不断选取A矩阵的子"方正"转置得到 ...
- c++局部变量在外可用的方法
C++的局部变量在作用域结束后,一般都会被回收.如下面这段代码 map<a*, b*> _map; void fun() { a _a; b _b; _map[&_a] = &am ...
- selenium模拟登陆淘宝
from selenium import webdriver import time from selenium.webdriver.common.by import By from selenium ...
- 项目管理、软件、禅道 VS JIRA
项目管理软件之争,禅道和JIRA大对比 - 简书https://www.jianshu.com/p/2533c0b7e456 [原创]项目管理软件之争,禅道和JIRA大对比 - zhengqiaoyi ...
- MYSQL 创建数据库SQL
CREATE DATABASE crm CHARACTER SET utf8 COLLATE utf8_general_ci; MySQL :: MySQL 5.7 Reference Manual ...
- c# Mongodb两个字段不相等 MongoDB原生查询
var document = new BsonDocument{ { "$where","this.StarTime!=this.EndTime"}, { }, ...