HTTP头中有个expires参数,设置一个未来的时间,在这时间以前,浏览器会先从cache读取,如果没有再从服务器中读取。对于像图片,css,script等静态内容,只需发一次http request就可,以后就可从cache中读取,一方面提高了响应时间,也减少了http rquest的次数。

具体的格式如下: Expires = "Expires" ":" HTTP-date。

Example: Expires: Thu, 01 Dec 2010 16:00:00 GMT.

Expires有个缺点就是它只能设置绝对时间,这样每当到达预设时间点后必须重设expires值。HTTP/1.1提供了一个新的参数cache-control可以设置相对时间。

Cache-Control:Max-age

Cache-Control使用max-age直接指定component能被缓存多长时间. 它定义了新的方式用秒为单位. 假如当前时间与上次返回时间差小于上次返回的max-age,那么浏览器使用缓存的版本。如果需要缓存10年,你可以这样指定:

Cache-Control: max-age=315360000

PS: 如果同时设置了cache-control和expires,cache-control会覆盖expires。

Apache中配置expires

Apache提供了mod_expires.so模块,可以轻松的设置expires值,以下是配置的范例:

LoadModule expires_module modules/mod_expires.so

ExpiresActive On

ExpiresDefault "access plus 300 seconds"  #默认300秒过期

<Directory "/myProject/webResources">   #文件所在目录

Options FollowSymLinks MultiViews

AllowOverride All

Order allow,deny

Allow from all

ExpiresByType text/html "access plus 1 day"

ExpiresByType text/css "access plus 1 day"

ExpiresByType text/javascript "access plus 1 day"

ExpiresByType image/gif "access plus 1 day"

ExpiresByType image/jpg "access plus 1 day"

ExpiresByType image/png "access plus 1 day"

ExpiresByType application/x-shockwave-flash "access plus 1 day"

#设置cache时间为1天

利用Apache配置http expires值提高网站性能的更多相关文章

  1. 利用 squid 反向代理提高网站性能(转载)

    本文在介绍 squid 反向代理的工作原理的基础上,指出反向代理技术在提高网站访问速度,增强网站可用性.安全性方面有很好的用途.作者在具体的实验环境下,利用 DNS 轮询和 Squid 反向代理技术, ...

  2. 利用squid 反向代理提高网站性能

    部分转自:http://www.ibm.com/developerworks/cn/linux/l-cn-squid/ Squid 反向代理的实现原理 目前有许多反向代理软件,比较有名的有 Nginx ...

  3. windows环境利用apache 配置虚拟主机

    windows环境利用apache 配置虚拟主机 1.改动http.host #LoadModule vhost_alias_module modules/mod_vhost_alias.so #In ...

  4. PHP提高网站性能的一些方法

    前段时间面试问到了这个问题,回答的不是很全面,就去问了度娘,得到了一些比较全的答案,由于出处较多就没法确定原文出处了.下面是分享的答案. 一.大型网站性能提高策略: 大型网站,比如门户网站,在面对大量 ...

  5. 提高网站性能的 5 个 Grunt任务//////////////////z

    提高网站性能的 5 个 Grunt任务 时间 2015-03-06 09:13:02  极客头条 原文  http://hugnew.com/wordpress/提高网站性能的-5-个-grunt任务 ...

  6. Tomcat:利用Apache配置反向代理、负载均衡

    本篇主要介绍apache配置反向代理,介绍了两种情况:第一种是,只使用apache配置反向代理:第二种是,apache与应用服务器(tomcat)结合,配置反向代理,同时了配置了负载均衡. 准备工作 ...

  7. 用CSS开启硬件加速来提高网站性能

    国外一篇文章,有点意思,转载过来,准备尝试下~ 中文地址:http://www.cnblogs.com/rubylouvre/p/3471490.html 原文地址:http://blog.teamt ...

  8. 用CSS开启硬件加速来提高网站性能(转)

    翻译文章,原文地址:http://blog.teamtreehouse.com/increase-your-sites-performance-with-hardware-accelerated-cs ...

  9. CSS开启硬件加速提高网站性能

    国外一篇文章,有点意思,转载过来,准备尝试下~ 中文地址:http://www.cnblogs.com/yzw7489757/ 原文地址:http://blog.teamtreehouse.com/i ...

随机推荐

  1. .NET Framework 工具

    您可以使用 .NET Framework 工具轻松创建.部署和管理面向 .NET Framework 的应用程序和组件. 此节中介绍的大部分 .NET Framework 工具将自动随 Visual ...

  2. Asp.NET websocket,Asp.NET MVC 使用 SignalR 实现推送功能一(Hubs 在线聊天室)

    ASP .NET SignalR 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信.什么是实时通信的Web呢?就是让客户端(Web页面)和服务器端可以互相通知消息及 ...

  3. 五毛党可能要失业了,因为AI水军来了

    当AI已经开始写稿.唱歌.翻译文章.把语音转录为文字的时候,我们其实应该清醒的认识到,五毛党要消亡了. 相信大部分人和小编一样,现在只要出门吃饭,就会打开大众点评搜好吃的,看评分,看网友的评论.一般来 ...

  4. java语言特性之一

    package java.util.Collections; public static int indexOfSubList(List<?> source, List<?> ...

  5. WIN10系统如何取消右下角的通知菜单,通知图标

    鼠标左键单击通知按钮,然后点击所有设置   在通知和操作页面,取消勾选所有的通知   建议选择在任务栏显示哪些图标,然后勾选显示所有图标  

  6. WPF 之 创建继承自Window 基类的自定义窗口基类

    开发项目时,按照美工的设计其外边框(包括最大化,最小化,关闭等按钮)自然不同于 Window 自身的,但窗口的外边框及窗口移动.最小化等标题栏操作基本都是一样的.所以通过查看资料,可按如下方法创建继承 ...

  7. RT/Metro商店应用如何调用SQLite数据库

    RT/Metro商店应用如何调用SQLite数据库 使用前,要安装:SQLite for Windows Runtime (Windows 8.1)(一个VS插件).还有Visual C++ Runt ...

  8. MAVEN创建JAVA的Web工程

    maven命令:http://blog.csdn.net/edward0830ly/article/details/8748986 1.创建MAVEN的Web工程 mvn archetype:gene ...

  9. 使用Flask+MongoDB实现基于REST的接口简单操作

    目录 前言 1 准备工作 2 具体实现 前言 最近在捣鼓如何使用阿里云服务器搭建一个简单的基于Flask框架的后端接口,刚开始为了图方便,就直接买了一个Windows Server 2008系统服务器 ...

  10. 苹果电脑Macbook怎么编辑hosts文件的方法

        苹果电脑Macbook怎么编辑hosts文件的方法 https://jingyan.baidu.com/article/fec4bce2690417f2618d8b07.html     文章 ...