记离线缓存(manifest)一大坑,断定其只适用于静态网站或离线应用

news/2024/4/27 15:45:39/文章来源:https://blog.csdn.net/weixin_34148456/article/details/89523664

今天看了离线缓存(manifest)方面的资料,兴冲冲地就想给自己的网站用上。待我把代码都写好部署上服务器,并测试过OK的时候,在SegmentFault刷了一把manifest方面的问答,才发现这个大坑:manifest除了缓存manifest.appcache文件所指定的资源外,还必定会缓存当前的html页面

具体来说:

  1. 当用户第一次访问页面,会从服务器上拉取html页面,以及其它静态资源。

  2. 浏览器会把html页面,连同manifest.appcache文件,连同manifest.appcache文件里所指定的静态资源一并存入Application Cache

  3. 当用户第二次访问该页面,manifest.appcache文件里所指定的静态资源就不需要重新加载了,直接从cache读出。这很好,问题是,当前的html页面也从cache直接读出来了,根本就不管线上的版本呀!

  4. 这造成的问题是,网站如果更新了,用户的浏览器根本不知道,还显示cache里的版本。

网上有所谓的利用<iframe>的方案,但由于年代久远,已不适用于当前的浏览器了。
冷静下来想想,这到底是不是个Bug呢?我认为不是,正如manifest的中文译名——离线缓存,这个功能根本就是设计给离线应用(例如Hybrid App)的:用navagator.online来判断当前用户是否联网,如果离线则任由浏览器/WebView读取缓存,如果在线则清空缓存后刷新页面让浏览器/WebView读取线上最新版本的代码。

另外,采取静态化策略的网站,也很适合采用manifest,因为静态化后的网站实际上就已经属于静态网站了,让浏览器读缓存可比从服务器读静态html还省性能。而如果网站需要更新的时候,在重新做完静态化(重新生成静态html文件)后,更改一下manifest的版本号,就可以刷新缓存了,运维成本也不高。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_813576.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自建导航页,如何获取网站在浏览器上显示的图标

网站图标 在访问一个网站时&#xff0c;通常会在浏览器标签的左上角显示网站对应的图标。 在做自定义导航这类页面时&#xff0c;为了显示效果&#xff0c;通常会把网站图标显示出来。 一、如何获取网站图标 在通常情况下&#xff0c;只需要在网站域名后加上/favicon.ico就…

记录一次给一个分发平台网站增加上传文件类型

虽然我不是很理解分发平台是做什么的&#xff0c;但是客户需求第一。 客户需求&#xff1a;目前只能上传apk、ipd类型的&#xff0c;需要增加一个mobileconfig类型的上传下载 开工&#xff01; 1、通过抓包&#xff0c;得知上传处理文件定位。 2、进入文件进行修改 增加类型…

python怎么访问网站_python如何访问网页

使用Python访问网页主要有三种方式&#xff1a; urllib, urllib2, httplib urllib比较简单&#xff0c;功能相对也比较弱&#xff0c;httplib简单强大&#xff0c;但好像不支持session 更多urllib知识&#xff0c;可以参考这些文章&#xff1a;最简单的页面访问import urllib2 …

php 删除文件夹_网站空间中的db、log、web三个文件夹都有什么作用?

之前有讲过“ftp删除文件”的相关问题&#xff0c;很多朋友会在清理空间后&#xff0c;发现原本空间内的、log、web三个文件夹都没有了&#xff0c;该怎么办呢&#xff1f;这三个文件的作用分别是&#xff1a;db&#xff1a;是放数据库的log&#xff1a;是日志文件夹web&#x…

防止网站页面被其他网站iframe引用方法

2019独角兽企业重金招聘Python工程师标准>>> 1、修改tomcat放置目录下的conf/web.xml配置文件 添加如下配置&#xff1a; <filter> <filter-name>httpHeaderSecurity</filter-name> <filter-class>org.apache.catalina.filters.Htt…

世界上最坚固的网站,也有可能被攻击

即使是世界上最坚固的网站&#xff0c;也有可能被攻击。 最近&#xff0c;三大运营商劫持流量的事情让很多互联网公司群情激愤。面对伤痕累累的友商&#xff0c;阿里巴巴却在一旁作壁上观。因为其在去年就启动了淘宝、天猫等全站的协议加密。利用https协议让网站和用户之间的沟…

oss php sdk+laravel搭建一个简单网站

背景 目前中小型网站最流行的还是采用php搭建自己的web服务器&#xff0c;一个web服务器都会做动静资源分离&#xff0c;静态资源流量小的话&#xff0c;静态文件可以统一放单独目录用域名独立访问&#xff0c;流量稍大的时候&#xff0c;可以直接托管到阿里云OSS上&#xff0c…

微信登录(网站应用)ASP.NET

效果第一步 请求CODE第二步 CODE 换取 Token第三步Token 调取接口我调用的是获取个人信息接口代码 效果 官方开发指南&#xff08;指南已经说的很清楚了&#xff09; 官方流程图&#xff1a; 第一步 请求CODE 第三方使用网站应用授权登录前请注意已获取相应网页授权作用域…

微信分享(网站)ASP.NET

实现的功能&#xff1a; 1、网址生成二维码 2、微信扫描二维码&#xff0c;打开网址 3、微信APP右上角点击弹出菜单分享 4、分享内容可自定义&#xff1a;标题、描述、链接、图片 普通分享显示图&#xff1a; 接口分享显示图 微信公众平台文档地址&#xff1a; 微信网页开…

对《网站非法内容监听系统的构想》的回复——我谈非法内容核查方法

刚才看了谢慧琦(是个MM&#xff1f;&#xff1f;)的《网站非法内容监听系统的构想》一文&#xff0c;觉得其中所述的想法与我之前的设想非常相像&#xff0c;所以我忍不住也想说几句了&#xff0c;嘿嘿&#xff1a; 我原先的设想就是在用户提交时&#xff0c;对提交内容进行危险…

linux怎么操作mysql数据库实例_实例 - Linux下用Perl进行MySQL数据库开发_数据库技术_Linux公社-Linux系统门户网站...

四、perl进行MySQL开发实例上述都安装完后&#xff0c;就可以进行实际开发了。首先在test数据库中新建一个表mysql> create table address (-> id int(5) not null,-> name varchar(40) not null,-> email varchar(50) not null,-> telephone int(12) null);Que…

qq浏览器网页翻译_海淘网站英文页面翻译办法

很多刚刚海淘的朋友&#xff0c;遇到的第一个问题&#xff0c;往往就是&#xff0c;看懂不懂&#xff0c;面对满屏的英文&#xff0c;它认识我&#xff0c;我不认识它&#xff0c;更别提要海淘下单了。接下来&#xff0c;小编分别介绍手机端和电脑端英文页面翻译办法。1、手机端…

wordpress表单数据验证_30分钟搭一个wordpress网站

我是一个着迷于产品和运营的技术人&#xff0c;乐于跨界的终身学习者。欢迎关注我哟&#xff5e;每周五早6点 按时送达&#xff5e;我的第「88」篇原创敬上因为最近工作比较忙&#xff0c;没太多时间思考和写东西。所以今天偷个懒&#xff0c;发一篇实操类文章。这篇文章非常“…

window服务如何通过程序如何打开谷歌浏览器并登陆指定网站_亚马逊如何看listing销量,亚马逊如何看销量排名...

我做跨境电商也有六年的时间了&#xff0c;在电商这个行业也有自己的一些经验。经验也许没有其他大卖家丰富&#xff0c;但会将我知道的都进行分享。如果有不懂得亚马逊问题可以我(V&#xff1a;772024802)。我这里给大家安排一堂直播课&#xff0c;可以系统的帮你解决做亚马逊…

seo扣费系统源码_关键词按天扣费就一定靠谱吗?

最近几年&#xff0c;SEO行业的形势不断变化&#xff0c;各种新出的SEO计费方式和营销模式花样百出。现在大多数SEO公司都打着按天扣费的模式&#xff0c;吸引客户。其实按天扣费模式的猫腻也很多&#xff0c;今天优化君让你们知道一家公司的按天扣费的套路&#xff0c;希望能帮…

python爬虫反爬机制_Python3爬虫学习之应对网站反爬虫机制的方法分析

本文实例讲述了Python3爬虫学习之应对网站反爬虫机制的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a; 如何应对网站的反爬虫机制 在访问某些网站的时候&#xff0c;网站通常会用判断访问是否带有头文件来鉴别该访问是否为爬虫&#xff0c;用来作为反爬取的一种策…

全面进入HTTPS网站加速新时代,CDN上线免费证书

点击访问折扣活动 点击了解相关专题与HTTPS技术直播 活动推荐 【TechDay】阿里云CDN Tengine开源技术沙龙-上海站&#xff0c;将在8月29日下午阿里虹桥中心展开&#xff0c;多位专家现场探讨CDN QUIC、TLSv1.3、直播、Tengine实践等话题&#xff0c;参与活动即可赢取阿里云定制…

网站服务器停止服务,DDoS攻击是如何让网站停止服务的?

DDoS攻击&#xff0c;是一种耗尽攻击目标的系统资源&#xff0c;导致攻击目标无法响应正常的服务请求的网络攻击方式。虽然&#xff0c;大规模的DDoS攻击占据了大部分的头条新闻&#xff0c;但实际上&#xff0c;较小的DDoS攻击在网络安全环境中更为常见。在没有做好充分的防护…

php实现飘窗,JS实现网站图片飘窗效果,JavaScript悬浮广告(附详细代码)

JS实现网站图片飘窗效果&#xff0c;JavaScript悬浮广告&#xff0c;飘窗效果-丁光辉博客(www.dingguanghui.com)*{margin:0px;padding:0px}#ad{position:absolute;left:0px;top:0px;}//通过ID获取imgaddocument.getElementById("ad");//定义横纵坐标x0;y0;//设置初始…

大型网站技术架构(六)网站的伸缩性架构

2019独角兽企业重金招聘Python工程师标准>>> 网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能&#xff0c;通过不断地向集群中添加服务器来增强整个集群的处理能力。“伸”即网站的规模和服务器的规模总是在不断扩大。 1、网站架构的伸缩性设计 网站的…