Apache服务器开启gzip压缩

1、web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩(Accept-Encoding 信息);

2、如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;

3、如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;

4、如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;

5、如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;

6、如果请求文件是动态文件,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。

三、Apache中开启gzip压缩服务

1、修改Apache的http.conf文件,去除mod_deflate.so前面的“#”号注释:

LoadModule deflate_module modules/mod_deflate.so

接着在http.conf最末尾添加gzip压缩配置的代码:

GZIP压缩模块配置

告诉apache对传输到浏览器的内容进行压缩

SetOutputFilter DEFLATE

压缩等级 9

DeflateCompressionLevel 9

设置不对后缀gif,jpg,jpeg,png,exe等文件进行压缩

SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png|exe|t?gz|zip|bz2|sit|rar|pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary

压缩类型 html、xml、php、css、js

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php text/css application/x-javascript

AddOutputFilter DEFLATE js css

里面的文件MIME类型可以根据自己情况添加,至于PDF 、图片、音乐文档之类的这些文件本身都已经高度压缩格式,重复压缩的作用不大,反而可能会因为增加CPU的处理时间及浏览器的渲染问题而降低性能。所以就没必要对其进行Gzip压缩。

2、对指定的文件配置缓存的生存时间,去除mod_headers.so模块前面的“#”号注释:

LoadModule headers_module modules/mod_headers.so

接着在http.conf最末尾添加文件缓存时间配置的代码:

文件缓存时间配置

<FilesMatch “.(flv|gif|jpg|jpeg|png|ico|swf|js|css)$”>

Header set Cache-Control “max-age=2592000”

3、配置完成后,重启Apache服务即可。

四、Apache服务异常停止处理

如果在http.conf末尾添加Gzip压缩配置,且重启Apache服务后,发现服务无法正常启动,就用我这个方法:

1、查看Apache安装目录下conf/extra/下,是不是有一个httpd-deflate.conf文件

2、在http.conf添加对httpd-deflate.conf文件的引用,代码如下:

引用GZIP压缩模块配置文件

#Include conf/extra/httpd-deflate.conf

3、修改httpd-deflate.conf里的配置代码,如下:

DeflateFilterNote Input instream

DeflateFilterNote Output outstream

DeflateFilterNote Ratio ratio

LogFormat ‘“%r” %{outstream}n/%{instream}n (%{ratio}n%%)’ deflate

CustomLog logs/deflate.log deflate

压缩类型 html、xml、php、css、js

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php text/css application/x-javascript

Netscape 4.x has some problems…

BrowserMatch ^Mozilla/4 gzip-only-text/html

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

最后

对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长。而不成体系的学习效果低效漫长且无助。时间久了,付出巨大的时间成本和努力,没有看到应有的效果,会气馁是再正常不过的。

所以学习一定要找到最适合自己的方式,有一个思路方法,不然不止浪费时间,更可能把未来发展都一起耽误了。

如果你是卡在缺少学习资源的瓶颈上,那么刚刚好我能帮到你。

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

所以学习一定要找到最适合自己的方式,有一个思路方法,不然不止浪费时间,更可能把未来发展都一起耽误了。

如果你是卡在缺少学习资源的瓶颈上,那么刚刚好我能帮到你。

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 18
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值