`
身心不坚强
  • 浏览: 36252 次
  • 性别: Icon_minigender_2
  • 来自: 西安
社区版块
存档分类
最新评论

Apache设置浏览器缓存的方法

 
阅读更多

一、设置浏览器缓存的四种方法

 

1、Last Modiefied:请求页面A,服务器会返回给浏览器页面A,并且加上一个lastmodified的标识表示最后的修改时间,那再次返回的时候,浏览器会通过if -modifiedsince询问在这个最后的修改时间之后是否修改过这个文件,然后服务器进行对比,最后服务器检查两个值的时间是否一致,如果一致,返回304缓存,不一致200。

2、Etag:与Last-Modiedied功能一致,Etag的出现弥补了Last-Modiedied的不足;

只能精确到秒:如果某些文件在1秒钟以内,被修改多次的话,它将不能准确标注文件的修改时间。

内容定期生成:当有时内容并没有任何变化,但Last-Modified却改变了,导致文件没法使用缓存。

没有准确获取文件修改时间:有可能存在服务器没有准确获取文件修改时间,或者与代理服务器时间不一致等情形。

3、Expire:在响应http请求时告诉浏览器在过期时间前可以直接从浏览器缓存取数据,而无需再次请求。

4、cache-control的浏览器缓存其实跟EXPIRES作用是一致的,但是在设置上会更加的细致,可以满足很多不同的需求。

 二、设置四种浏览器缓存后,浏览器再次请求时的工作流程 

 

 

三、Apache缓存配置

 

1、去掉httpd.conf文件中缓存模块的注释

# 启用缓存模块
LoadModule expires_module modules/mod_expires.so

2、在httpd.conf文件末尾加入缓存配置文件

# mod_expires.conf 缓存配置
Include conf/extra/mod_expires.conf

3、在conf/extra文件夹下新建mod_expires.conf文件,加入以下代码

<IfModule mod_expires.c>
   ExpiresActive On
   ExpiresDefault "access plus 10 days"
   ExpiresByType text/css A2592000
</IfModule>

上述配置文件中,“access plus 10 days”意指浏览时起算10天。依照Apache官方说明文件,过期起算时间有三种,分别是access、now 以及modification。其中access与now意义相同,而modification指的是网页文件的”最后编辑时间”。

(1)ExpiresActive On是指启用mod_expires功能,相对的Off就是关闭功能。

(2)ExpiresDefault是设定预设的过期时间。

(3)ExpiresByType是依照不同的网页文件型态来做过期时间设定。

使用<IfModule></IfModule>来包夹指令可以避免在mod_expires模组没有启用的情况下还要去执行。如果mod_expires模组确定已经启用,那不写<IfModule></IfModule>也没关系。

4、重启Apache使更改生效

分享到:
评论

相关推荐

    apache中使用.htaccess文件缓存图片的配置方法

    万一浏览器缓存被清空,浏览器会从缓存中重新加载图片或其它媒体。 1,打开网站所在的根目录的.htaccess文件,如没有,请新建。 2,输入以下代码 代码如下:# Image and Flash content Caching for One Month...

    Apache JMeter (apache-jmeter-5.4.3.zip)

    全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整...

    Apache JMeter 源码(apache-jmeter-5.4.3_src.zip)

    全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整...

    Apache JMeter (apache-jmeter-5.4.3.tgz)

    全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整...

    自设代理服务器缓存图片节省上网流量

    这里讲的是,有很多网站并没有明确指明图片、.js/.css 在用户的浏览器里面缓存一端时间,在这些网站的多个页面中切换,就会产生很多的重复流量。 我们可以合理地假定,网站的图片、.js/.css 文件,在一段时间内是...

    RemETag_去除iis的etag_配置ETag_iis性能优化

    ETags(Entity tags)是服务器和浏览器的一个功能,它用来判断浏览器缓存里的元素是否和原来服务器上的一致。ETags 比 last-modified date 更具有弹性,它用一个独一无二的字符串来标识一个元素的版本。很多网站丢分...

    apmod:apache模块-mod_concatx

    有效使用浏览器缓存避免服务代码泄漏避免内容粘在一起支持gzip用法 &lt; script src =" http://www.example.com/js/??js1.js,js2.js,js3.js " &gt; &lt;/ script &gt;Apache模块设置修改配置:“ conf / httpd.conf...

    Apache JMeter 源码(apache-jmeter-5.4.3_src.tgz)

    全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整...

    实战Nginx.取代Apache的高性能Web服务器

    3.6 Nginx的浏览器本地缓存设置 第4章 Nginx与PHP(FastCGI)的安装、配置与优化 4.1 获取相关开源程序 4.2 安装PHP 5.2.10(FastCGI模式) 4.3 安装Nginx 0.8.15 4.4 配置开机自动启动Nginx + PHP 4.5 优化...

    Apache环境下PHP利用HTTP缓存协议原理解析及应用分析

    http协议里控制浏览器缓存的头有三个Cache-Control,Expires,Last-Modified

    实战Nginx:取代Apache的高性能Web服务器 第一章

    3.6 Nginx的浏览器本地缓存设置 第4章 Nginx与PHP(FastCGI)的安装、配置与优化 4.1 获取相关开源程序 4.2 安装PHP 5.2.10(FastCGI模式) 4.3 安装Nginx 0.8.15 4.4 配置开机自动启动Nginx + PHP 4.5 优化Linux...

    Java高并发高性能分布式框架从无到有微服务架构设计.doc

    高并发- HTTP缓存浏览器缓存是指当我们使用浏览器访问一些网站页面或者http服务时,根据服 务端返回的缓存设置响应头将响应内容缓存到浏览器,下次可以直接使用缓存内容或者 仅需要去服务端验证内容是否过期即可。...

    SpringShiro分布式缓存版

    目的就是让用户整个访问过程中,项目读取到用户浏览器的同一个cookie..就会有一样的jessessionid.. --&gt; &lt;!-- sessionIdCookie的实现,用于重写覆盖容器默认的JSESSIONID --&gt; ...

    反向代理缓存的详细介绍

    反向代理缓存的详细介绍  传统代理: 用户隐藏在代理服务器之后。代理服务器工作在应用层,它只转发它支持的协议的数据。   反向代理(Reverse Proxy): 这种机制是... 可将Nginx做为Apache的反向代理服务器,反向代

    varnish——图形化清理缓存

    步骤二:在server1代理服务器上面进行设置 开始在node1上面搭建服务 yum install -y unzip php httpd安装这些服务 unzip bansys.zip -d /var/www/html解压到apache下 vim config.php改php图形化服务的配置文件 改ip...

    SaxuePower多语言企业网站系统 v1.1 R20141101

    在各主流浏览器(IE/FireFox/Opera等)上运行良好已发布模块:单页模块、文章模块、产品模块、招聘模块、留言反馈、WAP已发布功能:自定义URL规则、URLRewrite伪静态、区块缓存、页面缓存、编译缓存、远程附件、数据库...

    SaxuePower多语言企业网站系统 v1.1 R20141101.rar

    自定义URL规则、URLRewrite伪静态、区块缓存、页面缓存、编译缓存、远程附件、数据库备份恢复、多语言设置、多语言二级**访问、自定义模板风格、后台管理角色定义、网站Banner设置、自定义语言包...

    羊驼CMS v3.6.2

    5 分钟即可定制出简易的网站支持 Mysql / SQlite 数据库无限级别子栏目子栏目可设置独立风格(站中站)支持自定义原型属性,可以管理复杂的页面可实现复杂页面排版静态url, 面向 SEO 优化数据实时备份、恢复支持缓存 ...

    SaxuePower多语言企业网站系统 v1.1 R20141101.zip

    自定义URL规则、URLRewrite伪静态、区块缓存、页面缓存、编译缓存、远程附件、数据库备份恢复、多语言设置、多语言二级域名访问、自定义模板风格、后台管理角色定义、网站Banner设置、自定义语言包...      ...

    Windows下使用apache模块实现合并多个js、css提高网页加载速度

    现在的网站表现力越来越丰富,页面加载的js和css自然也越来越多。...1、每次都会重新向客户端发数据,没有合理利用浏览器缓存 2、存在安全漏洞,导致服务端程序被下载,比如”/??jquery.js,common.php

Global site tag (gtag.js) - Google Analytics