首页 > 经验 > 关键词 > GZIP压缩最新资讯 > 正文

apache2.0x 开启gzip压缩和http缓存的配置方法

2011-04-13 10:05 · 稿源:光年论坛

先谈gzip的配置方法,在apache2.0以上(包括apache2.0)的版中gzip压缩使用的是mod_deflate模块,下面是具体配置步骤:

第1步

LoadModule deflate_module modules/mod_deflate.so

LoadModule headers_module modules/mod_headers.so

打开httpd.conf后,先将上面两行配置前面的#号去掉,这样apache就会启用这两个模块,其中mod_deflate是压缩模块,就是对要传输到客户端的代码进行gzip压缩;mod_headers模块的作用是告诉浏览器页面使用了gzip压缩,如果不开启mod_headers那么浏览器就会对gzip压缩过的页面进行下载,而无法正常显示。

第2步

在httpd.conf中加入以下代码,可以加到任何空白地方,不了解apache的朋友,如果担心加错地方,就放到http.conf文件的最后一行。

 <IfModule mod_deflate.c>
    SetOutputFilter DEFLATE    #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩

    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩
    SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary

    AddOutputFilterByType DEFLATE text/* #设置对文件是文本的内容进行压缩,例如text/html  text/css  text/plain等
    AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript #这段代码你只需要了解application/javascript application/x-javascript这段就可以了,这段的意思是对javascript文件进行压缩
    AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #这段是告诉apache对php类型的文件进行压缩

    BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一些问题,所以只压缩文件类型是text/html的
    BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的问题,所以不开启压缩
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # IE浏览器会伪装成 Netscape ,但是事实上它没有问题

    Header append Vary User-Agent env=!dont-vary #确保代理不会发送错误的内容
</IfModule>

本配置到这里apache中的gzip压缩就配置完成,重启apache后,新的配置就会生效,当然这里我们还不会重启apache因为下一步要配置http缓存,也就是mod_expires模块。

第1步

LoadModule expires_module modules/mod_expires.so

在httpd.conf中,找到上面的代码,然后将前面的#去掉

第2步

在httpd.conf中加入以下代码,可以加到任何空白地方,不了解apache的朋友,如果担心加错地方,就放到http.conf文件的最后一行。

 <IfModule mod_expires.c>
    ExpiresActive On #激活http缓存,也就是个开关,必须有的一段代码
    ExpiresDefault A604800 #默认缓存时间为604800秒,也就是7天,A表示以客户端时间为准
    ExpiresByType text/css A3600 #对css文件缓存3600秒,也就是1小时,A表示以客户端时间为准
    ExpiresByType text/html A3600 #对html文件缓存3600秒,也就是1小时,A表示以客户端时间为准
    ExpiresByType application/x-javascript A3600 #对javascript文件缓存3600秒,也就是1小时,A表示以客户端时间为准
    ExpiresByType image/gif "access plus 2 month" #对gif图片缓存2个月,以客户端时间为准
    ExpiresByType image/jpeg "access plus 2 month" #对jpeg和jpg图片缓存2个月,以客户端时间为准
    ExpiresByType image/png "access plus 2 month" #对png图片缓存2个月,以客户端时间为准
    ExpiresByType image/x-icon "access plus 2 month" #对浏览器小图标缓存2个月,以客户端时间为准
    ExpiresByType application/x-shockwave-flash A2592000 #对flash文件缓存2592000秒,也就是1个月,A表示以客户端时间为准

    #特别注意也可以使用 ExpiresByType text/css M3600  这里的M表示以文件最后修改时间为准缓存1小时,例如有些时候,我们的HTML是大批量定时更新的,这个时候就可以用到M

  Header unset Pragma #删除掉http头信息中的Pragma,不懂的可以google一下Pragma,他也是控制浏览器缓存的,不过是用于http1.0标准
  FileETag None
  Header unset ETag #这段代码和上面一段的作用是不使用http1.1标准中的ETag属性
  <FilesMatch "\.(js|css|ico|pdf|flv|jpg|jpeg|png|gif|mp3|mp4|swf)$"> #针对js|css|ico等后缀的文件进行单独设置
  #Header set Expires "Thu, 15 Apr 2013 20:00:00 GMT"
  Header unset Last-Modified #不使用http头信息中的Last-Modified属性,Last-Modified是指文件最后修改时间
  Header append Cache-Control "public" #设置为可被任何缓存区缓存
  </FilesMatch>
</IfModule>

上面的配置是我自己的服务器上正在使用的配置方法,在这里与大家分享一下,代码不会有错,最后不要忘记重启apache服务器哦!

如果有apache高人有更好的配置,请指教一下!

如果用的虚拟主机,而虚拟主机支持.htaccess,则可以将上面的代码放到.htaccess文件中。

文章来源:光年论坛

  • 相关推荐
  • 大家在看
  • Chrome正在启用HTTP/3,支持IETF QUIC

    QUIC(Quick UDP Internet Connections)是 Google 推出的一个项目,旨在降低基于 TCP 通讯的 Web 延迟。QUIC 非常类似 TCP+TLS+SPDY ,但是基于 UDP 实现的。它是 HTTP/3 的基础协议。

  • 魔兽世界9.0暗影国度电脑配置要求 PC配置需求一览

    魔兽世界9.0前夕正式上线了,很多新玩家朋友加入其中,一些小伙伴还不清楚魔兽世界9.0暗影国度的配置要求是什么,下面就来为大家详细的介绍一下。

  • 苹果Apple Pay怎么开通长沙潇湘卡 使用方法教程介绍

    苹果Apple Pay怎么开通长沙潇湘卡?今日起,Apple Pay 正式支持长沙潇湘卡,用户可以使用 Apple Pay 快捷交通模式便捷出行,在长沙乘坐公交、地铁和磁悬浮。这是 Apple Pay 快捷交通卡在中国大陆地区支持的第 8 个城市,继北京、上海、深圳、广州、苏州、厦门、天津之后。

  • iPhone12各版本配置参数对比 iPhone12详细配置数据一览

    iPhone12终于是在10月14日的凌晨千呼万唤始出来,大家都很关心的就是各个版本中iPhone12的配置参数对比,下面就来为大家详细的介绍一下iPhone12和iPhone12 mini配置参数对比。

  • 腾讯进一步拥抱开源:主导Apache社区新一代分布式存储系统Ozone 1.0.0发布

    刚刚获悉,由腾讯云大数据团队主导的Ozone 1.0.0版本在Apache Hadoop社区正式发布。据了解,经过2年多的社区持续开发和内部1000+节点的实际落地验证,Ozone 1.0.0已经具备了在大规模生产环境下实际部署的能力。Ozone 是Apache Hadoop社区推出的新一代分布式存储系统,它的出现满足了大量小文件的存储问题,解决了Hadoop分布式文件系统在可扩展性上的缺陷。作为Hadoop生态圈的一款新的对象存储系统,能够支持百亿甚至千亿级文件规模

  • 小米10T/10T Pro详细配置曝光:1亿像素镜头 配置不错

    此前我们报道过,小米定于 9 月 30 日举办海外新品发布会,正式发布旗下新机小米10T。这款手机从外观上来看,应该是小米10 Pro的海外版本。近日有外媒曝光了小米10T系列新机的详细配置信息,旗舰性能配置还是不错的。

  • 爱玛配置好不好,看完这篇文章你就了解了

    说其爱玛,大家对她时尚潮流的外观非常喜爱。不过也有些小伙伴有疑惑,长得这么好看,爱玛配置怎么样?作为国内知名电动车品牌,爱玛的产品可以说种类繁多,下面以E350(TZ-L4820 标准版)为例,为大家解答一下爱玛配置好不好的问题。这款E350 是爱玛 7 月的新款,在发布的新款豪锂车型里的算不上最高,也不算很低,用来比较分析正合适。(图注:爱玛E350)首先是电机,决定电动车性能的是电机的性能。E350 采用的是350W的博世电机

  • 原神iOS设备启动限制解除说明公告 iOS支持机型配置分享

    原神在9月28日开启了iOS平台的公测,其中不是每一台iOS设备都能玩原神的,那么到底原神支持什么样的iOS机型配置,下面就来为大家详细的介绍一下。

  • iPhone 12 Pro Max细节曝光:苹果也开始堆配置!

    对于苹果来说,他们希望iPhone 12不同版本之间的差距更大,特别是旗舰机型。据外媒最新消息称,苹果希望在今年将iPhone 12 Pro Max与包括iPhone 12 Pro在内的其他产品线进行差异化,那就是为最

  • 火币深度:人民币持续升值,通胀威胁下的资产配置方向

    本周,离岸人民币升破6.76,中间价升破6.8关口(下图蓝色曲线),创下了16个月以来的新高。据火币全球站行情显示,当前USDT报价6.75。图:人民币兑美元汇率人民币升值背后,其原因涉及到诸多方面:一是中国对疫情的反应快速且有效,社会经济迅速复苏;二是中国出口开始抢占更大的市场份额;三是美联储实行宽松政策,大水漫灌导致美元持续贬值;最后,中美利差扩大,当前已经扩大到年内高点(250个基点),人民币资产相比美元更具有吸引力?

  • 如果说做建站代理轻松好运营,那么好产品和好服务才是基础配置

    导语:根据数据显示,我国个体/企业数量达到11020万户,但网站的数量只有500万个,因此目前企业对网站的需求还是比较大的,对于建站代理商来说,还是有很大的市场潜力。昆明天牛科技有限公司的张总,一个大胆的80后青年,在看到了互联网的发展趋势下,毅然放弃了自己的酒店业务,从“0”开始,走上了互联网大军的队伍之中。今天有幸跟张总聊天,才发现这位有志有谋的青年,目光独到,选择准确,成为了耐思智慧的建站代理商,轻轻松松,月利润达到50

  • iPhone12promax电池容量是多少 具体参数配置介绍

    苹果iPhone12ProMax作为今年的顶级旗舰手机,其受关注度是相当高的,不少人也打算购买这款iPhone旗舰手机,对于iPhone12 Pro Max的参数配置也十分感兴趣,这里我们来看下这款旗舰手机的配置信息。

  • iPhone12全系存储配置、外观配色曝光:焕然一新

    北京时间下周三凌晨 1 点( 10 月 14 日),苹果将举办线上新品活动,在iPad Air4 和iPad8 已经揭晓的前提下,此次活动的主角将完全落在iPhone12 上。

  • 微软将从Windows 10控制面板中彻底删除Flash配置组件

    作为网络最常见的安全威胁之一的AdobeFlashPlayer将在2020年底前从Windows10中彻底移除。此前,Adobe公司表示,计划在2020年逐步取消对FlashPlayer的支持。包括微软、谷歌和苹果在内的软件制造商都在制定FlashPlayer的淘汰计划。此外,今年年底也将是Windows10中AdobeFlash的终结时刻。

  • 四款iPhone 12亮相 新机配置参数对比 都有这些区别!

    在 10 月 14 日的新品发布会上,苹果给我们带来了iPhone 12 mini、iPhone 12、iPhone 12 Pro和iPhone 12 Pro Max四款新机,令人大饱眼福同时也使人有点眼花缭乱。现在,我们就来简单地总结一下这四款新机的配置都有哪些异同。

  • 海外版新款特斯拉Model 3配置清单曝光:大升级!国产再等等

    近日,有博主拿到了特斯拉渠道的2021款Model 3升级的全部项目,未来这些配置未来将应用到国产车型中。值得一提的是,此前我们曾报道过特斯拉北美官网更新的新款Model 3配置,而这次配置信息有

  • 新款Model 3配置升级美国首发 国产版为何没有?特斯拉官方回应

    近日,特斯拉北美官网信息显示,Model 3迎来更新。配置方面,万众期待的电尾门将会在新款Mdoel 3上配备。车内部分,新车中控台底部进行了修改,手机无线充电区域看上去更为厚重,同时储物盖加入

  • 索尼PS5的配置和外形是两年前决定的 风扇是机身尺寸偏大的原因

    据这台最受关注的游戏机的机械和热设计团队负责人透露,PlayStation5 最重要的许多功能在两年前就已经决定了。Yasuhiro Otori在接受日经社XTech采访时证实,游戏机的配置、时钟和硬件外形都是两年前决定的,液态金属散热的准备工作也是在那个时候开始的。

  • OPPO智能电视怎么样 OPPO电视多少钱发布时间配置参数介绍

    9 月 24 日上午,在 OPPO 开发者大会上,OPPO 新兴移动终端事业部总经理易炜宣布,OPPO 智能电视将于 10 月发布,将会是万物互融下家庭场景的内容生态入口。此前OPPO 副总裁、中国区总裁刘波在 9 月 7 日发布的致中国区伙伴的一封信中表示,OPPO 第一款智能电视产品即将与消费者见面,而下一代 Find 系列机型预计将于明年第一季度推出。

  • 5G手机一加8T发布在即:这些配置亮点怎能错过呢?

    大家期待已久的5G手机一加8T将会在今天正式发布,从官方官宣一加8T发布时间到现在,一加手机也在对该款新机不断进行预热,有关这款“让眼力,有电力”的旗舰新品的配置信息也被曝光。

  • 参与评论
文明上网理性发言,请遵守新闻评论服务协议
  • 热门标签