解决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缓存问题
给您推荐相同类型的内容:
html如何加入背景音乐?
需要准备的材料分别有:电脑、浏览器、html编辑器。1、首先,打开html编辑器,新建html文件,例如:index.html。2、在index.html中的<body>标签中,输入html代码:<a求计算算法的复杂度 (Python写的逻辑)
(a) 算法复杂度为O(n),因为只有一个while循环,且i<n,所以复杂度是线性级,仅跟n有关(b) 算法复杂度为O(n²),实际上算法复杂度为nxn2 = n²2,因为有for循环的嵌套(c) 算法复杂度为O(n),因CSS实现垂直居中的7种方法
HTML: CSS: 重点:父容器高度和子元素line-height一样的数值,内容中的行内元素就会垂直居中。 HTML: CSS: 重点:给父元素添加一个伪元素::before,让这个伪元素的div高度为100%,这样css 向左向下箭头
使用 当然,其他任意方向也是可以的,只需要控制旋转角度rotate即可。原理是构造了一个正方形,隐藏了其中的两条边left和bottom,然后进行旋转。 通过使用正方形左下两条边,并向下向右平移,再旋转,得到一个向下并居中的箭头&a&在c语言中是什么意思?
&:在C语言中有两种意思,一种是取地址符,是单目运算符;另一种是位运算符,表示“按位与”,是双目运算符。a&b表示啊a和b按位进行与运算。&后面是个变量。每个变量对应一块存储空间。每个存储空间有一个编号,也就是写一个带存档的js游戏
关于写一个带存档的js游戏相关资料如下最近使用 JS 写了一个贪吃蛇游戏,效果如下:贪吃蛇作为一款经典又简单的小游戏,每个人都玩过。实现一个贪吃蛇游戏基本具有以下功能:棋盘(也被称作 “地图”,我这里画的像一个围棋棋盘,索性就叫棋盘)蛇 (GO语言有哪些优势?怎样入门?
1、学习曲线它包含了类C语法、GC内置和工程工具。这一点非常重要,因为Go语言容易学习,所以一个普通的大学生花一个星期就能写出来可以上手的、高性能的应用。在国内大家都追求快,这也是为什么国内Go流行的原因之一。2、效率Go拥有接近C的运行效R语言中的with函数什么意思?
height.weight是数据框(data.frame),Height应该是height.weight中的一个变量with就是把所有操作都限制在数据框上。比如说你手上有两组数据,asian是亚洲人的身体参数:体重 身高 视力等等,euroHtml中的列表
Html中列表共有三种:有序列表、无序列表和自定义列表。下面分开解释下:1.有序列表是一列使用数字进行标记的项目,它使用<li>包含于<ol>标签内。示例如下: 执行效果为:1.语JS脚本怎么运行?
我们常见的执行js代码都是放入到HTML引入后然后通过HTML文件来执行胡查看代码。显然这是比较麻烦的事情,如果你的电脑里面安装了node.js,你可以使用node来直接使用node来运行你想要运行的js文件。扩展资料:动态程序一般有两js关于处理字符串中的空格问题方法总结
一、函数 function trim(str){ 删除左右两端的空格return str.replace((^s )|(s $)g, "")} function ltrim(str){如何使用css实现一个简单的顶部对齐
要让div顶端对其,那么就必须根据HTML的布局和css样式的对其方式决定了:1.浮动(float),这种情况下默认横向是left,纵向是top方向,所以默认就满足顶端对其;2.定位(position),这种情况下只要设置要top的值就可以js将十六进制颜色转透明度的函数
js将十六进制颜色转透明度的函数CSS颜色的表示方式一般有两种10进制与16进制,分别是【rgb(255, 100, 0)】【#FF0000】。两个16进制组合数是0-255(16*16=256)。 颜色是RGB红绿蓝三原色java中date类型怎么比较大小
date 实现了Comparable 接口 调用compareTo(Date date)方法可以比较大小。例如:比较date1 和 date2的大小int res = date1.compareTo(date2),相等则返回0,datehtml怎么输出一条横线
用input页面标签并将下Border设为直线<style>input[type="text"]{border-bottom:solid 1px #ccc}<style&微框架 Python Flask 和 Ruby Sinatra,哪个更值得推荐
作者:Ruoyu Sun链接:https:www.zhihu.comquestion20160965answer16552833来源:知乎著作权归作者所有,转载请联系作者获得授权。这个问题很难回答,Sinatra vs Flas轻松压缩JS文件
在任意文件夹下按住shift按键的同时,点击鼠标右键 打开powershell命令窗口 执行命令: npm install uglify-js -g 首先,打开cmd 其次,查找要压缩的js文件,查找方法如下: 1、输入js除法取整
1.取整 丢弃小数部分,保留整数部分parseInt(52) 2 2.向上取整 向上取整,有小数就整数部分加1Math.ceil(52) 3 3.向下取整 向下取整,丢弃小数部分Math.floor(52) 2介绍计数器 定时器 程序 的编写步骤 (C语言的)
假设你用的晶振为12m,用p1.0口输出周期为2ms的方波。使用定时器工作方式1.至于计数初值的计算,授之以鱼不如授之以渔!在定时器模式下,计数器的计数脉冲来自于晶振脉冲的12分频信号,即对机器周期进行计数。若选择12m晶振,则定时器的计数打造自己的渗透测试框架—溯光
TrackRay简介 溯光,英文名“TrackRay”,意为逆光而行,追溯光源。同时致敬安全圈前辈开发的“溯雪”,“流光”。 溯光是一个开源的插件化渗透测试框架,框架自身实现了漏洞扫描功能,集成了知名安全工具:MetasplCSS设置字体发光或有阴影.
在样式表中,定义一个img{filter:none}这样,页面中的所有图片就不会有发光效果了!把body的stlye属性删除掉,再把你要发光的字体加入到一个DIV用css控制div,定义id,class,任一个都可以,不建议用标签,字体的设怎么用html做一个系统登录界面文本框前有小图案
可以用html进行程序编写,从而实现系统登陆界面文本框前有小图案的需求。可参照以下代码为模板进行编写:完整的代码1:https:download.csdn.netdownloadmingzi124512406208 代码2httpPython是什么?
从今天开始,我们将用文章来讲述如何学习Python这门高级编程语言,但是在此之前,我们有必要先讨论一下“Python 是什么”。Python 英文原意为“蟒蛇”,直到 1989 年荷兰人 Guido van Rossum (简称 GuidoJS脚本怎么运行?
我们常见的执行js代码都是放入到HTML引入后然后通过HTML文件来执行胡查看代码。显然这是比较麻烦的事情,如果你的电脑里面安装了node.js,你可以使用node来直接使用node来运行你想要运行的js文件。扩展资料:动态程序一般有两解决index.html缓存问题
解决index.html缓存问题 一般项目发版后前端静态文件会有缓存问题, 不强制刷新很难解决, 但是用户不会去强制刷新, 这就需要我们开发人员在配置方面解决浏览器缓存静态文件问题。 一般浏览器缓存的文件有html、cspython flask 怎么组织公用模块
首先要说明,flask项目中不可能总是只有一个应用,你这里只有一个app应用。在__init__.py中导入views,models等模块是为了方便同级文件或其他文件导入它们。例如你可能需要在views.py中导入models, 你只需要f[HTML表格]3.表格嵌套
1)width--表格的宽度(px %) 若不设置,则取决内容的宽度。 2)align--表格的水平对齐方式(left center right) 3)border--表格边框的宽度(px) 4)bgcolor--表格的背景飞信java通用版下载方法
java几?java进行到现在 共分3个版本 最早的java1.x 后来的2.x 跟现在的3.x不知道什么原因 在java3.x更新后 2.x全部停用 而且没有地方提供下载了我个人感觉 2.x的版本是最好的 我曾经试过 挂了一通宵 竟然一k有没有想过css定位与xpath的区别
CSS定位:从图层渲染来说吧,它是把元素定位到网页中的任何一个位置,也就是控制元素的显示位置,比如网页常见的返回顶部按钮就是用定位实现的。xpath:从网页结构层面来说吧,假如网页中有一个元素span,你如何确定这个元素是你想要的元素spamyeclipse 开启js代码自动提示功能?
在myeclipse页面开始操作,流程如下:没有编程辅助提示是一件很头疼的事,像“HttpServletRequest”这么长的类名都要一个个字母挨着敲。点击菜单栏的Windows ,选择Preferences,进入设置中心。依次点击Jav