xampp 开启缓存(一)

Apache模块 mod_expires

概述

这个模块控制服务器应答时的Expires头内容和Cache-Control头的max-age指令。有效期(expiration date)可以设置为相对于源文件的最后修改时刻或者客户端的访问时刻。

这些HTTP头向客户端表明了文档的有效性和持久性。如果有缓存,文档就可以从缓存(除已经过期)而不是从服务器读取。接着,客户端考察缓存中的副本,看看是否过期或者失效,以决定是否必须从服务器获得更新。

要修改Cache-Control头中max-age(参见RFC 2616 section 14.9)项之外的内容,你还可以使用Header指令。

Alternate(交替/轮流) Interval(间隔) Syntax(语法)

ExpiresDefaultExpiresByType指令同样能够用易懂的语法格式进行定义:

ExpiresDefault "<base> [plus] {<num> <type>}*"
ExpiresByType type/encoding "<base> [plus] {<num> <type>}*"

其中<base>是下列之一:

  • access
  • now (等价于‘access‘)
  • modification

plus关键字是可选的。<num>必须是整数[可以被atoi()接受的],<type>是下列之一:

  • years
  • months
  • weeks
  • days
  • hours
  • minutes
  • seconds

例如,下列3个指令都表示文档默认的有效期是一个月:

ExpiresDefault "access plus 1 month"
ExpiresDefault "access plus 4 weeks"
ExpiresDefault "access plus 30 days"

有效期可以通过增加"<num> <type>"子句进一步调整:

ExpiresByType text/html "access plus 1 month 15 days 2 hours"
ExpiresByType image/gif "modification plus 5 hours 3 minutes"

注意,如果你使用基于最后修改日期的设置,"Expires:"头将不会被添加到那些并非来自于磁盘文件的内容。这是因为这些内容并不存在"最后修改时间"的属性。

ExpiresActive 指令

说明 启用或禁用产生"Expires:"和"Cache-Control:"头的功能
语法 ExpiresActive On|Off
作用域 server config, virtual host, directory, .htaccess
覆盖项 Indexes
状态 扩展(E)
模块 mod_expires

这个指令对其作用范围内的文档启用或禁用产生ExpiresCache-Control头的功能。若设置为 Off 则不会为其作用范围内的任何文档生成ExpiresCache-Control头(除非被更低一层的规则改写,比如.htaccess文件)。若设置为 On 则会按照ExpiresByTypeExpiresDefault指令定义的标准为其作用范围内的文档生成ExpiresCache-Control头。

注意,这个指令并不保证ExpiresCache-Control头一定会产生。如果定义的标准不规范,将不会产生这两个头,其效果是好像从未设置过这个指令一样。

ExpiresByType 指令

说明 由MIME类型配置的Expires头的值
语法 ExpiresByType MIME-type <code>seconds
作用域 server config, virtual host, directory, .htaccess
覆盖项 Indexes
状态 扩展(E)
模块 mod_expires

这个指令定义了为指定MIME类型的文档(如text/html)生成的Expires头的值和Cache-Control头的max-age指令。seconds参数设置了添加到基准时间以构造有效期限的秒数。Cache-Control: max-age的计算方法是从有效期减去当前请求时间并转化为秒数。

基准时刻可以是源文件的最后修改时刻或者客户端对源文件的访问时刻,至于使用那一个则由<code>指定。"M"表示源文件的最后修改时刻,"A"表示客户端对源文件的访问时刻。需要注意的是<code>seconds之间没有空格。

这两种基准的差别是很微妙的。如果使用"M",所有当前缓存中的文档副本都将在同一时刻过期,这个可能对定期更新的URL(比如位于同一位置的每周通告)很有好处。如果使用"A",则每个客户端所得到的有效期是不一样的,这个可能对那些几乎不更新的图片文件很有好处,特别是对于一组都引用了相同图片的相关文档。

示例:

# 启用有效期控制
ExpiresActive On
# GIF有效期为1个月
ExpiresByType image/gif A2592000
# HTML文档的有效期是最后修改时刻后的一星期
ExpiresByType text/html M604800

注意,这个指令只有在"ExpiresActive On"的条件下才有效。它对指定的MIME类型文档改写由ExpiresDefault指令设置的有效期。

你也可以使用前面讲述的alternate syntax指定有效期的计算方法。

ExpiresDefault 指令

说明 默认有效期的计算方法
语法 ExpiresDefault <code>seconds
作用域 server config, virtual host, directory, .htaccess
覆盖项 Indexes
状态 扩展(E)
模块 mod_expires

该指令设置了其作用范围内的所有文档的默认有效期的计算方法,它可以被ExpiresByType指令基于MIME类型被改写。详情请参见ExpiresByType指令和那个alternate syntax的描述。

时间: 2024-10-14 07:22:21

xampp 开启缓存(一)的相关文章

xampp 开启缓存(二)

开启浏览器缓存后,在内容未过期前,浏览器不会重复从服务器提取数据文件,从而减少网页内容传输,提高网页打开速度. (1) 编辑Apache配置文件httpd.conf,查找下面这一行 1 #LoadModule expires_module modules/mod_expires.so 删除前面的#:如没有就查找LoadModule位置,加入上述行 (2) 在httpd.conf末尾增加以下内容: 01 02 03 04 05 06 07 08 09 10 11 12 13 <IfModule m

mysql开启缓存

mysql 开启查询缓存可以有两种方法来开启一种是使用set命令来进行开启,另一种是直接修改my.ini文件来直接设置都是非常的简单的哦. 开启缓存,设置缓存大小,具体实施如下: 1.修改配置文件,windows下是my.ini,linux下是my.cnf; 在配置文件的最后追加上:  代码如下 复制代码 query_cache_type = 1 query_cache_size = 600000 需要重启mysql生效: 那么采用第二种方式: b) 开启缓存,两种方式: a)使用mysql命令

ng开启缓存 造成的问题:

开启缓存 造成的问题:

PHP开启缓存加速

 PHP默认会将Operate Code文件丢弃,缓存加速是将其保存下来,放置共享内存中,以便在下次调用该PHP页面时重用,避免相同代码的重复编译 ___________________________________________________________ ■ LAMP环境PHP解析原理___________________________________________________________Apache接收客户的PHP程序请求,并根据规则过滤之Apache将PHP程序请求传

web.config 开启缓存

<!-- 是否启动服务器缓存--> <add key="IsCache" value="true" /> <!-- 服务器缓存设置时间(分钟)--> <add key="TimeCache" value="240" />

TP5开启缓存

https://www.kancloud.cn/manual/thinkphp5/215850 V5.0.6+版本开始,全局请求缓存支持设置排除规则,使用方法如下:config.php文件 'request_cache' => true, 'request_cache_expire' => 3600, 'request_cache_except' => [ '/blog/index', '/user/member' ], 缓存文件在:\runtime\cache 中 request_ca

ThinkPHP 3.2 Apache .htaccess 开启缓存max-age(2014-11-7修正版)

<Files *> Options -Indexes </Files> <IfModule mod_headers.c> <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$"> Header set Cache-Control "max-age=2592000, public" </FilesMatch> <FilesMatch &quo

windows 下 PHP DOITPHP框架 memcache缓存开启。

<-> 首先需要安装memcache服务器 win7 64位 下载地址:http://files.cnblogs.com/bin-pureLife/memcached-win64.rar 安装好,开启. <二> 修改php.ini extension=php_memcache.dll(去掉前面的分号,开启缓存扩展) 注意:扩展库中的php_memcache.dll 版本必须相同不然会报错 提供各种版本dll下载:http://files.cnblogs.com/bin-pureLi

ThinkPHP 3.2 开启 cache缓存的注意事项,过滤非法字符

开启缓存的配置文件 /Application/Common/conf/cache.php源码如下: <?php return array( //'配置项'=>'配置值' 'LAYOUT_ON' => true, 'HTML_CACHE_ON' => strpos($_SERVER['HTTP_HOST'], '.') !== false, // 开启静态缓存 默认为 true 本地不开启 'HTML_CACHE_TIME' => 3600, // 全局静态缓存有效期(秒) '