15053971836 注册 / 登录

apache开启gzip压缩

时间: 阅读:105
apache开启gzip压缩

最佳回答

阳光下的阴霾

阳光下的阴霾

2023-01-13 01:05:33

在负载均衡中有一个必须要做的事情就是给服务器开启Gzip压缩功能,对用户请求的页面进行压缩处理,以达到节省网络带宽,提高网站速度的作用。

Gzip是若干文件压缩程序的简称,通常指GNU计划的实现,此处的Gzip代表的就是GUN ZIP,这也是HTTP1.1协议定义的两种压缩方法中最常用的一种压缩方法,客户端浏览器大都支持这种压缩格式。

接下来,将介绍Apache、Nginx 如何开启Gzip压缩。

Apache开启Gzip要看查看是否已经开启mod_deflate模块,如果没有则需要先加载,在配置文件httpd.conf中将

前面的#号去掉。另外,如果对Apache的配置文件不太懂的客户在修改配置文件之前对配置文件进行备份。

开启模块后,在httpd.conf配置文件的最下面空白处添加一下内容:
其中DeflateCompressionLevel 的意思是压缩等级,共分为1-9,9级为最高,不建议使用太高的压缩比,这样会对CPU产生太大的负担。

打开配置文件 nginx.conf找到Gzip on 把前面的注释符号#去掉即可开启GZIP服务。然后配置GZIP即可。

下面是一个相对优化不错的配置。

最新回答共有5条回答

  • 清风若雨
    回复
    2023-01-13 04:04:46

    要想知道如何提升一个网站的打开速度,我们要首先知道我们平时访问一个网站,会经过哪些步骤,一些我们普通人看不到的步骤:

    1、在你的电脑打开浏览器,输入网址提交访问

    2、你的电脑会根据你的宽带速度发送请求访问的数据信息给域名服务器,也就是“DNS”

    3、域名服务器“DNS”通过域名解析绑定的IP地址,进行访问这个域名IP地址的服务器。

    4、服务器收到请求,进行读取服务器磁盘上存储的网站数据提供展示给你。

    我们简单了解了上面这些访问一个网站需要完成的几个步骤,虽然看着简单,但是里面运行的内容不简单,我们现在来逆向分解这些步骤,了解这些步骤,再考虑如何提升一个网站的打开速度。

    先来看看网站的服务端,也就是网站存放的服务器端影响网站打开速度的一些因素。

    服务器的配置影响一个网站的响应速度,也就是影响网站的打开速度

    1、服务器的配置高低影响性能

    如果你租用过存放网站的服务器,就会发现我们平时租用服务器选择配置的时候,会有CPU、内存、带宽、硬盘这些服务器主要配置供你选择。


    硬盘我们知道主要就是存放数据用的,影响一个网站在这台服务器上运行的速度的主要配置就是CPU、内存两大部件的选择,那么肯定是这些配置越高越好,运行的速度就会更快。

    这个只是服务器主机的运行配置,如果需要外网,也就是公网外面访问这个服务器速度块,还需要一个必要的配置,就是网络带宽,这些带宽就是按M来选择,同样的道理,供给这台服务器的带宽节点,越高越好。

    当然,在我们日常建设网站中,会因为运营成本问题,会考虑网站的具体运营情况,按照访客数量和数据量来进行合适的配置选择,不会选得太高,那样会浪费成本。

    2、网站程序代码方面的影响

  • 匿名用户
    回复
    2023-01-13 04:04:46

    经常听见很多小伙伴抱怨某某网站打不开、访问慢,甚至因此还影响人的心情。作为普通用户而言,可能觉得网站访问慢是所谓的“网速慢”,但作为从事IT行业的人而言,我想说“慢”很多时候不是某一方的问题。

    其实一个网站的访问速度取决于多方面因素的影响,主要有以下几方面:

    访客当前的网络状况:如果用户自己的网络本来就慢,那访问各种网站基本上都很慢;

    受访网站的网络、负载情况:被访问网站如遇带宽不够、服务器负载大、宕机、被攻击等情况时,会影响所有用户的正常访问;

    Internet当前网络情况及传输载体的状况:如果全球网络都存在问题,或者国内某个地域的骨干网络出现问题,就会严重影响网络通讯了。

    综上,如果要加速网站访问,我觉得要从访客(用户)角度和网站服务商角度一起去做优化,具体方案如下:

    1、作为普通访客

    保证宽带稳定,在下载时尽可能限速下载,以免影响上网速度;

    如果宽带本来很大,但上网很慢,要检查下是否存在下载,另外对电脑查杀下木马。

    2、作为网站服务商

    可以加配CDN加速服务(国内很多CDN厂商,比如七牛、阿里云、网宿等,作为过来人建议选择七牛CDN),这样能最大程度上突破地域网络限制,用户请求资源时会就近请求资源,速度很快;

    网站上的图片避免物理大小过大,另外图片一定要适当裁剪,不少网站上一张图片可能就有1M多,这是很不正常的;

    及时清理掉404状态的资源,防止引用不存在的资源;

    用好NoSQL存储,缓解数据查询压力;

    有条件的可以实施:读写分离、主从同步,保证数据库无瓶颈;

    视情况升级公网带宽。

    综上建议供大家参考,我是

  • 游客
    回复
    2023-01-13 04:04:46

    关于这个问题,可以从服务端/网站建设方和客户端/用户方两个方面考虑:

    服务端/网站建设方

    如果您是网站的建设方,可以考虑但不局限于:

    1、选择实力强的互联网服务提供商,选用高带宽、高可靠的服务器部署服务端程序,如云服务器,具备负载均衡等能力。

    2、服务器端动静分离,使用静态文件生成技术,静态资源采用CDN加速。

    3、使用高速缓存,提高加载速度。

    客户端/网站用户

    1、选择在网速快、非人员密集的地方上网,能用有线上网最好。

    2、选用处理器能力强、内存/缓存大的电脑或手机。

    3、及时清理浏览器缓存等文件,电脑、手机运行太长时间,产生垃圾文件多,处理器和内存消耗殆尽,会导致网页打开变慢。

  • 清风若雨
    回复
    2023-01-13 03:03:36

    服务器设置 gzip 压缩是 web 开发里很普遍的做法。假设你要请求一个 100k 的文件,网络传输速度为 50k/s,需要 2s 才能得到数据,但是如果在服务器设置了 gzip 压缩,将服务端的文件压缩到了 50k(实际上的压缩率往往小于 50%),这时候只需 1s 就能得到数据,然后在客户端解压即可。

    可以对比下同一个文件在开启 gzip 前后的大小。

    gzip 压缩前:

    gzip 压缩后:

    那么如何在服务端开启 gzip 服务呢?这里以 apache 为例简单介绍下。

    打开 apache 的 "httpd.conf" 文件,比如我的是在 "C:wampinpacheApache2.2.21conf" 目录下。找到以下这一行,将它前面的注释(#)去掉:

    很多参考文件都提到同时要对 LoadModule headers_module modules/mod_headers.so 去掉注释,说 "如果不开启这个,那网站就不能正常显示了" ,不过我在测试过程中没有去掉也没有问题。

    接着再添上以下代码:

    这样就能对所有文件进行 gzip 压缩了。压缩等级是个 1-9 之间的整数,取值范围在 1(最低) 到 9(最高)之间,不建议设置太高,虽然有很高的压缩率,但是占用更多的CPU资源。(本地测试了下 1 和 9 压缩率差不了多少...)

    实际开发中我们并不需要对所有文件进行压缩,比如我们无需对图片文件进行 gzip 压缩,因为图片文件(一般为 jpg、png等格式)本身已经压缩过了,再进行 gzip 压缩可能会适得其反(详见 图片要启用gzip压缩吗?绝对不要!,背景图片千万不要gzip压缩,尤其是PNG),类似的还有 PDF 以及音乐文件。所以我们可以设置过滤指定文件或者对指定文件进行压缩。

    比如我们