顶部右侧 | 自行修改 顶部左侧内容
当前位置:网站首页 > SEO技术 > 正文

Web前端性能优化教程03:添加Expires头

seo秀 2019-05-25 14 浏览 0 评论

 ,本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头。完整教程可查看 Web前端性能优化,什么是Expires头?,

 

本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头。完整教程可查看Web前端性能优化

什么是Expires头?

Expires存储的是一个用来控制缓存失效的日期。当浏览器看到响应中有一个Expires头时,它会和相应的组件一起保存到其缓存中,只要组件没有过期,浏览器就会使用缓存版本而不会进行任何的HTTP请求。Expires设置的日期格式必须为GMT(格林尼治标准时间)。

HTTP1.1协议中缓存的另一种选择

Expires存在着明显的不足。

首先,Expires头使用的是一个特定的时间,要求客户端和服务器端的时钟严格同步。何为严格同步?我们知道客户端的时间是可以修改的,如果服务器和客户端的时间不统一,这就导致有可能出现缓存提前失效的情况,存在不稳定性。其次,假如Expires的日期到来了,那么还需要在服务器配置中提供一个新的日期。

面对这种情况,HTTP1.1引入了Cache-Control头来克服Expires头的限制。Cache-Control使用max-age制定组件被缓存多久,使用秒为单位,例如Cache-Control:max-age=3600;表示组件将被缓存60分钟。如果max-age和Expires同时出现,则max-age有更高的优先级,浏览器会根据max-age的时间来确认缓存过期时间。

Cache-Control除了可以设置max-age之外,还可以同时设置其他标签。如下图所示常用标签:

如何配置过期缓存?

在ASP.NET下,可以通过web.config文件来配置缓存。

  • <!--单独配置Expires-->
  • <system.webServer>
  •     <staticContent>
  •         <clientCache cacheControlMode="UseExpires" httpExpires="Sun, 29 Mar 2020 00:00:00 GMT"/><!--表示过期时间为2020年3月29号-->
  •     </staticContent>
  • </system.webServer>
  • <!--单独配置max-age-->
  • <system.webServer>
  •     <staticContent>
  •         <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="30.00:01:00"/><!--表示过期时间为(30*24*60*60+60)s后-->
  •     </staticContent>
  • </system.webServer>
,

本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头。完整教程可查看Web前端性能优化

什么是Expires头?

Expires存储的是一个用来控制缓存失效的日期。当浏览器看到响应中有一个Expires头时,它会和相应的组件一起保存到其缓存中,只要组件没有过期,浏览器就会使用缓存版本而不会进行任何的HTTP请求。Expires设置的日期格式必须为GMT(格林尼治标准时间)。

HTTP1.1协议中缓存的另一种选择

Expires存在着明显的不足。

首先,Expires头使用的是一个特定的时间,要求客户端和服务器端的时钟严格同步。何为严格同步?我们知道客户端的时间是可以修改的,如果服务器和客户端的时间不统一,这就导致有可能出现缓存提前失效的情况,存在不稳定性。其次,假如Expires的日期到来了,那么还需要在服务器配置中提供一个新的日期。

面对这种情况,HTTP1.1引入了Cache-Control头来克服Expires头的限制。Cache-Control使用max-age制定组件被缓存多久,使用秒为单位,例如Cache-Control:max-age=3600;表示组件将被缓存60分钟。如果max-age和Expires同时出现,则max-age有更高的优先级,浏览器会根据max-age的时间来确认缓存过期时间。

Cache-Control除了可以设置max-age之外,还可以同时设置其他标签。如下图所示常用标签:

如何配置过期缓存?

在ASP.NET下,可以通过web.config文件来配置缓存。

  • <!--单独配置Expires-->
  • <system.webServer>
  •     <staticContent>
  •         <clientCache cacheControlMode="UseExpires" httpExpires="Sun, 29 Mar 2020 00:00:00 GMT"/><!--表示过期时间为2020年3月29号-->
  •     </staticContent>
  • </system.webServer>
  • <!--单独配置max-age-->
  • <system.webServer>
  •     <staticContent>
  •         <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="30.00:01:00"/><!--表示过期时间为(30*24*60*60+60)s后-->
  •     </staticContent>
  • </system.webServer>

相关推荐

做SEO多久才能看到效果?
  • 做SEO多久才能看到效果?
  • 做SEO多久才能看到效果?
  • 做SEO多久才能看到效果?
  • 做SEO多久才能看到效果?
什么是SEO网络推广,每天都需要做那些事?
  • 什么是SEO网络推广,每天都需要做那些事?
  • 什么是SEO网络推广,每天都需要做那些事?
  • 什么是SEO网络推广,每天都需要做那些事?
  • 什么是SEO网络推广,每天都需要做那些事?
SEO全揭秘,这里独一份,适合各阶段人群
  • SEO全揭秘,这里独一份,适合各阶段人群
  • SEO全揭秘,这里独一份,适合各阶段人群
  • SEO全揭秘,这里独一份,适合各阶段人群
  • SEO全揭秘,这里独一份,适合各阶段人群
今日头条seo如何优化?如何做搜索靠前呢?
今日头条seo如何优化?如何做搜索靠前呢?

一、“头条seo”是什么?头条seo指的是在今日头条app上用关键词搜索结果排名靠前。做百度有所谓的“百度seo”,做谷歌有所谓的“谷歌seo”,那么作为头条这...

2周前 (08-13) seo秀

如何判断一个要优化的关键词能否SEO上百度首页?
  • 如何判断一个要优化的关键词能否SEO上百度首页?
  • 如何判断一个要优化的关键词能否SEO上百度首页?
  • 如何判断一个要优化的关键词能否SEO上百度首页?
  • 如何判断一个要优化的关键词能否SEO上百度首页?
百度官方分享:让蜘蛛抓取网页的四种方式
百度官方分享:让蜘蛛抓取网页的四种方式

百度在微信上分先过来四种让蜘蛛收录网页的四种方式,主推推送、sitemap、手工提交、自动推送。那是什么意思呢?1、主动推送:是最为快速的提交方式,建议您将站点...

3个月前 (06-03) seo秀

2019年百度seo算法大全 第一篇
  • 2019年百度seo算法大全 第一篇
  • 2019年百度seo算法大全 第一篇
  • 2019年百度seo算法大全 第一篇
  • 2019年百度seo算法大全 第一篇
2019年百度seo算法大全 第二篇
  • 2019年百度seo算法大全 第二篇
  • 2019年百度seo算法大全 第二篇
  • 2019年百度seo算法大全 第二篇
  • 2019年百度seo算法大全 第二篇
关键字的优化需要注意什么?
关键字的优化需要注意什么?

网站关键字可以带来更多的流量到您的网站,可以带来更好的排名为你的网站在搜索引擎。随着互联网科技的不断发展,我们在我们的日常生活中发现,在网络中起着非常重要的作用...

3个月前 (06-02) seo秀

SEO前景怎么样?

经济低迷,做付费推广你们不心疼吗?还是做SEO吧!对于利用搜索引擎进行的推广营销,这是任何企业都不可以忽略的。在做搜索引擎营销,即SEM,以百度为例子,SEM包含:知道、地图、文库、百科、经验等以及付...

欢迎 发表评论: