Tomcat中给静态资源添加缓存失效时间 |
您所在的位置:网站首页 › tomcat服务器缓存怎么清 › Tomcat中给静态资源添加缓存失效时间 |
官方文档简介配置路径例子语法介绍什么样的情况response会被设置缓存头
Tomcat性能调优 通过ExpiresFilter设置资源缓存
官方文档
http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#Expires_Filter 简介ExpiresFilter是Java servlet API 当中的一部分,它负责控制设置response当中的响应头:Expires 和 Cache-Control的max-age,过期时间可以设置为相对于源文件的最后修改时间,或者浏览器的访问时间。 这些响应头指示浏览器控制资源的缓存,如果使用了缓存,那么浏览器在下一次获取资源的时候就会从本地缓存中获取,而不是访问实际的资源服务器,除非超过失效时间。 配置路径tomcat的conf目录下的web.xml文件 例子下面的例子针对所有的HTML IMAGE CSS JAVASCRIPT 输出进行控制,添加HTTP头设置客户端缓存。 ExpiresFilter org.apache.catalina.filters.ExpiresFilter ExpiresByType text/html access plus 5 minutes ExpiresByType image access plus 5 minutes ExpiresByType text/css access plus 5 minutes ExpiresByType application/javascript access plus 5 minutes ... ExpiresFilter /* REQUEST 语法介绍 ExpiresDefault plus ExpiresByType type plus ExpiresByType type;encoding plusbase可以设置为: access 访问时间。now (equivalent to ‘access’) 当前时间,相当于访问时间。modification 文件的最后修改时间。num必须是一个integer。 type的值可以设置为: yearsmonthsweeksdayshoursminutessecondsExpiresDefault代表所有的MIME类型 比如 text/plain image/png application/javascript等等。 下面的例子设置所有的MIME类型的输出被客户端缓存一个月,即缓存过期时间为一个月。 ExpiresDefault access plus 1 month ExpiresDefault access plus 4 weeks ExpiresDefault access plus 30 days过期时间还可以使用子句进行调整,例如: ExpiresByType text/html access plus 1 month 15 days 2 hours // 缓存到期时间设置为当前时间 加上 1个月 15天 2小时 ExpiresByType image/gif modification plus 5 hours 3 minutes // 缓存到期时间设置为文件的修改时间 加上 5小时 3分钟 什么样的情况response会被设置缓存头1、根据ExpiresByType 指定的 Content-Type 或者 使用了ExpiresDefault 2、Expires或Cache-Control 这俩个响应头没有被定义情况过滤器才会设置,如果我们已经设置了该响应头,那么就不会再重复设置了。 3、response的status没有包含在ExpiresExcludedResponseStatusCodes这个属性的配置当中。 这个属性可以在web.xml当中配置过滤器当中配置,定义哪些状态吗不需要设置缓存头,默认304的时候就不会被设置。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |