解决index.html缓存问题 一般项目发版后前端静态文件会有缓存问题, 不强制刷新很难解决, 但是用户不会去强制刷新, 这就需要我们开发人员在配置方面解决浏览器缓存静态文件问题。 一般浏览器缓存的文件有html、css、js等。 css、js文件被缓存的解决方案 一般html中引入的css和js的名字都加了哈希值,所以新版本css、js和就旧版本的名字是不同的,不会有缓存问题。 如果index.html文件被缓存就稍微麻烦些 首先可以在index.html文件头部添加mate标签禁止缓存 <meta http-equiv="Expires" content="0"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-control" content="no-cache"> <meta http-equiv="Cache" content="no-cache"> 浏览器的缓存解决, 但是一般在服务器端还是会有缓存, 当浏览器访问index.html时拿到的就是服务器缓存的文件,所有我们还需要解决服务器的缓存 这需要在服务器配置不让缓存index.html nginx 配置如下: location = /index.html { add_header Cache-Control "no-cache, no-store" }通过HTTP的META设置expires和cache-control 指令不区分大小写,并且具有可选参数,可以用令牌或者带引号的字符串语法。多个指令以逗号分隔。 客户端可以在HTTP请求中使用的标准 Cache-Control 指令。 Cache-Control: max-stale[=<seconds>] Cache-Control: min-fresh=<seconds> Cache-control: no-cache Cache-control: no-store Cache-control: no-transform Cache-control: only-if-cached 服务器可以在响应中使用的标准 Cache-Control 指令。 Cache-control: no-cache Cache-control: no-store Cache-control: no-transform Cache-control: public Cache-control: private Cache-control: proxy-revalidate Cache-Control: max-age=<seconds> Cache-control: s-maxage=<seconds> 拓展缓存指令不是HTTP缓存标准的一部分,使用前请注意检查 兼容性 ! Cache-control: immutable Cache-control: stale-while-revalidate=<seconds> Cache-control: stale-if-error=<seconds> public 表明响应可以被任何对象(包括:发送请求的客户端,代理服务器,等等)缓存。 private 表明响应只能被单个用户缓存,不能作为共享缓存(即代理服务器不能缓存它)。 no-cache 强制所有缓存了该响应的缓存用户,在使用已存储的缓存数据前,发送带验证器的请求到原始服务器 only-if-cached 表明如果缓存存在,只使用缓存,无论原始服务器数据是否有更新 max-age=<seconds> 设置缓存存储的最大周期,超过这个时间缓存被认为过期(单位秒)。与Expires相反,时间是相对于请求的时间。 s-maxage=<seconds> 覆盖max-age 或者 Expires 头,但是仅适用于共享缓存(比如各个代理),并且私有缓存中它被忽略。 max-stale[=<seconds>] 表明客户端愿意接收一个已经过期的资源。 可选的设置一个时间(单位秒),表示响 应不能超过的过时时间。 min-fresh=<seconds> 表示客户端希望在指定的时间内获取最新的响应。 must-revalidate 缓存必须在使用之前验证旧资源的状态,并且不可使用过期资源。 proxy-revalidate 与must-revalidate作用相同,但它仅适用于共享缓存(例如代理),并被私有缓存忽略。 immutable 表示响应正文不会随时间而改变。资源(如果未过期)在服务器上不发生改变,因此客户端不应发送重新验证请求头(例如If-None-Match或If-Modified-Since)来检查更新,即使用户显式地刷新页面。在Firefox中,immutable只能被用在 https:// transactions. 发送如下指令可以关闭缓存。此外,可以参考Expires 和 Pragma 标题。 对于应用程序中不会改变的文件,你通常可以在发送响应头前添加积极缓存。这包括例如由应用程序提供的静态文件,例如图像,CSS文件和JavaScript文件。另请参阅Expires标题。 缓存主要两个策略 强制缓存 ,协商缓存 强制缓存就是设置本地资源html img js等等缓存多长时间 超过时间就去服务器端取。 协商缓存就是每次都询问服务器资源是否已经过期 没有过期就使用缓存 已经过期就从服务器上重新取。 缓存流程可以分三个阶段 本地缓存,协商缓存 ,缓存失败 现在的vue项目里都不是这样缓存的 我个人感觉这是在静态页面时的缓存办法 现在都是webpack打包时通过 hash chunkhash contenthash来决定缓存方式 主要就是在请求的文件名称后面加一个id 来判断文件是否已经更新。
解决index.html缓存问题
给您推荐相同类型的内容:
R语言的发展历史
R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PL需要一个HTML模板,用来做简单的表单数据录入
HTML做个数据录入的模板。如下参考:1、首先新建一个html,点击<body><body>中间,先填入表格内容:2.内容可根据要求编写,示例代码如下:<table&求计算算法的复杂度 (Python写的逻辑)
(a) 算法复杂度为O(n),因为只有一个while循环,且i<n,所以复杂度是线性级,仅跟n有关(b) 算法复杂度为O(n²),实际上算法复杂度为nxn2 = n²2,因为有for循环的嵌套(c) 算法复杂度为O(n),因打造自己的渗透测试框架—溯光
TrackRay简介 溯光,英文名“TrackRay”,意为逆光而行,追溯光源。同时致敬安全圈前辈开发的“溯雪”,“流光”。 溯光是一个开源的插件化渗透测试框架,框架自身实现了漏洞扫描功能,集成了知名安全工具:Metaspl有没有想过css定位与xpath的区别
CSS定位:从图层渲染来说吧,它是把元素定位到网页中的任何一个位置,也就是控制元素的显示位置,比如网页常见的返回顶部按钮就是用定位实现的。xpath:从网页结构层面来说吧,假如网页中有一个元素span,你如何确定这个元素是你想要的元素spajava堆栈是什么意思?
简单的说:Java把内存划分成两种:一种是栈内存,一种是堆内存。x0dx0a x0dx0a在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,js数组查找是否包含方法总结
var arr = [1, 2, 3, 4, 5, 6] 方法一: indexOf (常用) if (arr.indexOf(2) !== -1) { console.log("包含2") } 方法二: fiRuby Rose 剪发视频的背景音乐是什么
Ruby Rose剪发视频《Break Free - Ruby Rose》中的背景音乐是Butterfly Boucher演唱的《It Pulls Me Under》。歌名:It Pulls Me Under演唱:Butterfly Bou怎么用html做一个系统登录界面文本框前有小图案
可以用html进行程序编写,从而实现系统登陆界面文本框前有小图案的需求。可参照以下代码为模板进行编写:完整的代码1:https:download.csdn.netdownloadmingzi124512406208 代码2httpcss中 readonly和disabled的区别
两者都起到form表单不能编辑文本框不能输入的作用,区别如下: 1.样式不同 (1)readonly表示只读,一般表示对文字内容只读,即不可更改内容,使用时外观无变(2)disabled表示是残疾,是残废,不管什么内容都会无效;使用[HTML表格]3.表格嵌套
1)width--表格的宽度(px %) 若不设置,则取决内容的宽度。 2)align--表格的水平对齐方式(left center right) 3)border--表格边框的宽度(px) 4)bgcolor--表格的背景java怎样把string型数据转换为object型数据
String默认继承Object,因此,String类是Object的子类,String类型就是Object类型。直接强转就行了。String s = "hi" Object o = sjava是面对对象的编程,所有的类微框架 Python Flask 和 Ruby Sinatra,哪个更值得推荐
作者:Ruoyu Sun链接:https:www.zhihu.comquestion20160965answer16552833来源:知乎著作权归作者所有,转载请联系作者获得授权。这个问题很难回答,Sinatra vs Flascss图文混排问题#layout ul li{width: 80px;float: left;margin: 20px 0 0px 20px;display: inline
下面图片高度固定为68,如果你设置li宽度100那么就多出32像素。三亚这两个字不超过32像素,就排在一行。要么在图片下面加个换行要么把图片宽设为100%图文混排有很多种方法。这里举例几个:第一种方法是背景图片法这种方法适用于非动态内容,图html模板
1、ASP文件中的代码pencat=rs.Fields.Item("m_content").Value pencat=replace(pencat,"t_title",n_title)pencat=r这个html计时器为什么打开后什么都不显示?
1、你引入xxx.js文件的代码没错;2、注意你的html文件名称是 index(2).html,确保你在浏览器里访问的是这个文件;3、并不是引入了js文件就会执行,有些js文件的内容不是执行代码,而是函数定义,这种情况要调用后才会执行的。css图文混排问题#layout ul li{width: 80px;float: left;margin: 20px 0 0px 20px;display: inline
下面图片高度固定为68,如果你设置li宽度100那么就多出32像素。三亚这两个字不超过32像素,就排在一行。要么在图片下面加个换行要么把图片宽设为100%图文混排有很多种方法。这里举例几个:第一种方法是背景图片法这种方法适用于非动态内容,图css注册有短信验证的代码
题主是否想询问“css注册有短信验证的代码吗”?有。根据查询css软件官方可知,css注册有短信验证的代码,层叠样式表是一种用来表现HTML或XML等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元JS特效模版是什么意思
就是使用javascript做的一些非常漂亮的特效,比如导航条,一些炫酷的动画,这些模板的好处就是只需修改对应的html元素的id 或者class,就可以将这些效果应用到属于你自己的网页上。百度知道上也有很多JS特效,比如抽奖和商城页面的特【R语言作图】如何在地图上任意位置画饼图直方图等
1.利用R包rworldmap &rworldxtra来作图。 2.已有的map数据中一个国家对应一个坐标,一个国家边界,利用这些已有数据+用户数据构建新的画图数据(其他新添加的图均是如此)。 文件逗号分隔,每列的说明前高小白入门必读教程
前高小白入门必读教程如下:1、掌握基础知识。作为一名前端小白,基础一定要打牢固。html是超文本标记语言,我们见到的网页都是以它为基础的。css是层叠样式表,它可以给网页添加样式,让我们的网页更加美观。js即JavaScript,它是一种直&在c语言中是什么意思?
&:在C语言中有两种意思,一种是取地址符,是单目运算符;另一种是位运算符,表示“按位与”,是双目运算符。a&b表示啊a和b按位进行与运算。&后面是个变量。每个变量对应一块存储空间。每个存储空间有一个编号,也就是js对象上下移动怎么搞
视图的改变都应该是因为数据的改变而引起的,而不是直接通过一些api去更改视图,像你这种对应的数据应该类似[ { name: '开始', value: 1 }, {c语言这样写格式怎么错了?
你的错误是没加头文件,因为使用printf需要调用库函数 stdio.h。符号名包括模块名、常量名、标号名、子程序名等。这些名字应该能反映它所代表的实际东西,具有一定的意义,使其能够见名知义,有助于对程序功能的理解。命名采用匈牙利命名法。具轻松压缩JS文件
在任意文件夹下按住shift按键的同时,点击鼠标右键 打开powershell命令窗口 执行命令: npm install uglify-js -g 首先,打开cmd 其次,查找要压缩的js文件,查找方法如下: 1、输入css 向左向下箭头
使用 当然,其他任意方向也是可以的,只需要控制旋转角度rotate即可。原理是构造了一个正方形,隐藏了其中的两条边left和bottom,然后进行旋转。 通过使用正方形左下两条边,并向下向右平移,再旋转,得到一个向下并居中的箭头&acss常见技巧-雪碧图、背景、居中、透明度
CSS sprites是指把网页中很多小图片(很多图标文件)做成按规律排列的一张大图上,在显示的时候通过background-image、background-position显示图片特定部分达到和分散的一张张小图片一样的效果。 作用html中的li和ul是什么标签
<li>标签定义列表项目。可用在有序列表 (<ol>) 和无序列表 (<ul>) 中。<ul>标签定义无序列表。所有主流浏览器都支持 &amC语言实验报告总结
你只需要按那个模版就行,那些内容就改成你的作业 班级: 学号: 姓名:实验9 指针 一、实验目的(1)掌握指针概念,并定义与使用它。(2)使用数组的指针和指向数组的指针变量。(3)使用字符串的指针和指向字符串的指针变量。二、实验内容1.CSS实现垂直居中的7种方法
HTML: CSS: 重点:父容器高度和子元素line-height一样的数值,内容中的行内元素就会垂直居中。 HTML: CSS: 重点:给父元素添加一个伪元素::before,让这个伪元素的div高度为100%,这样