「SEO大军」博主SEO大军从事9年SEO工作,有丰富的网站SEO优化实战经验,诚接网站SEO诊断、SEO顾问!

首页 > 干货分享 / 正文

配置ETag优化网页速度?

SEO大军 2018-07-19 15:16:39 微信号:15382847313 干货分享

  配置ETag

  以前浏览器缓存的就会失效。

  什么是ETag?

  实体标签(EntityTag)是唯一标识了一个组件的一个特定版本的字符串,是web服务器用于确认缓存组件的有效性的一种机制,通常可以使用组件的某些属性来构造它。

  条件GET请求

  如果组件过期了,浏览器在重用它之前必须首先检查它是否有效。浏览器将发送一个条件GET请求到服务器,服务器判断缓存还有效,则发送一个304响应,告诉浏览器可以重用缓存组件。

  那么服务器是根据什么判断缓存是否还有效呢?有两种方式:

  ETag(实体标签);

  最新修改日期;

  最新修改日期

  原始服务器通过Last-Modified响应头来返回组件的最新修改日期。

  为什么要引入ETag?

  ETag主要是为了解决Last-Modified无法解决的一些问题:

  一些文件也许会周期性的更改,但是他的内容并不改变(仅仅改变的修改时间),这个时候我们并不希望客户端认为这个文件被修改了,而重新GET;

  某些文件修改非常频繁,比如在秒以下的时间内进行修改,(比方说1s内修改了N次),If-Modified-Since能检查到的粒度是s级的,这种修改无法判断(或者说UNIX记录MTIME只能精确到秒);

  某些服务器不能精确的得到文件的最后修改时间。

  ETag带来的问题

  ETag的问题在于通常使用某些属性来构造它,有些属性对于特定的部署了网站的服务器来说是唯一的。当使用集群服务器的时候,浏览器从一台服务器上获取了原始组件,之后又向另外一台不同的服务器发起条件GET请求,ETag就会出现不匹配的状况。例如:使用inode-size-timestamp来生成ETag,文件系统使用inode存储文件类型、所有者、组和访问模式等信息,在多台服务器上,就算文件大小、权限、时间戳等都相同,inode也是不同的。

  最佳实践

  1.如果使用Last-Modified不会出现任何问题,可以直接移除ETag,google的搜索首页则没有使用ETag。

  2.确定要使用ETag,在配置ETag的值的时候,移除可能影响到组件集群服务器验证的属性,例如使用size-timestamp来生成时间戳。

大军SEO,9年来一直专注SEO技术研究,营销型网站建设,热爱SEO,希望能和大家多多交流共同学习,目前主要为企业和个人提供网站优化,关键词排名等服务,属于全职个人站长,凡是跟大军合作的每家企业/个人都是认真负责,做好网站每个细节,如有SEO/网络营销技术问题的朋友可以。

本页核心:配置ETag,优化,网页速度

Tags:

声明:
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,如注作有误请联系我更改;
2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;
3.欢迎您对本文《配置ETag优化网页速度?》做点评,可以加我QQ或微信吐槽;
4.本页面网址:https://www.seodajun.com/SEOfenxiang/667.html

干货分享
了解更多配置ETag,优化,网页速度,请在查看本站栏目对应内容进行参阅,如对配置ETag优化网页速度?有不明之处可以与我交流,如配置ETag优化网页速度?信息有误您也可以进行指导,本博客仅为SEO界的伙伴互相交流的一个SEO博客。

【大军SEO,9年如一日因为专业所以专注!做网站优化9年,熟悉各种CMS,精通各种搜索引擎排名,深知产品推广套路。专注于营销型网站建设,整站优化外包、关键词排名、黑帽/白帽SEO技术!承接网站SEO优化服务、SEO顾问服务(QQ:88288050)】
热门标签