我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何开启gzip和deflate压缩

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何开启gzip和deflate压缩

这期内容当中小编将会给大家带来有关如何开启gzip和deflate压缩,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

什么是压缩?

大家还记得我们第一次接触winzip软件吗?非常神奇,一个文件,经过winzip压缩后,大小可以压缩成原来的30%左右。记得当年,很多文件,都是压缩后才可以放到自己的软盘中。

而对于网站,也有这样的压缩技术,可以让你的网页中的文本类文件瘦身,在用户完全不知情的情况下,通过gzip和deflate压缩程序有效减少了网页,让用户更快的打开网站。

压缩有多大用处?

通过一个小小的测试软件,我对新浪、网易等门户网站进行了访问。

新浪首页访问情况:

如何开启gzip和deflate压缩

网易首页访问情况:

如何开启gzip和deflate压缩

大家可以明显的看到,网易和新浪的首页,经过压缩后,都缩小了70%以上。

相信大家都知道,当一个网页,减小到30%后,对于最终用户来说,打开网站的效率会提升为原来的3倍。

备注:

该工具地址http://www.gidnetwork.com/tools/gzip-test.php 大家也可以测试下自己的网站压缩后的情况。

用户不支持压缩怎么办?

开启压缩后,会不会由于用户无法访问这种压缩文件,导致用户访问文件失败?

不会,因为Trident、Gecko、Webkit三种内核的浏览器,都在发起请求时,告知服务器,他们支持什么压缩格式,如下图:

如何开启gzip和deflate压缩

而服务器都是按照发起请求中用户支持的压缩格式,进行对应反馈。如果用户发起的请求头中,无Accept-Enconding头,就将返回给用户非压缩格式。

如何开启压缩?

请百度娘之,网上太多教程了,不再赘述。

对哪些内容开启压缩呢?

只需要针对文本类文件的域名开启压缩。图片等,已经都是压缩格式了,再使用压缩,不会减少什么文件大小,反而会导致服务器负载变高,以及会由于这种对图片的不规范压缩使用导致各种各样意想不到的问题。

所以,开启压缩之前,最好先完成域名拆分的工作,具体见如何让网站打开更快第二弹。

技巧点:

开启压缩,建议使用apache服务器。

因为IIS服务器在处理压缩时有个小问题,就是第一次被访问的时候,IIS给出的文件时非压缩的,后续的访问,才直接给出压缩文件。

这个小的bug,其实问题并不大,但是现在很多网站都在用一些缓存服务器或者是CDN,就会导致这个问题被放大,会导致压缩启用并不能完全成功。

而apache是第一次就直接给出压缩后的文件。

当然了,如果你用的是IIS,并且无法替换apache,那就自己麻烦一些,写个脚本,将常用的页面,在开启压缩后,访问2次,可以减少很多问题发生。

开启压缩之进阶篇

当下的中国网络状况

中国网络谁当家,当然是电信和联通两朵花,但是现在越来越看到的现象是百花争艳,除了这两朵花之外,越来越多的涌现小ISP。如移动、电信通、长城、方正、歌华有线、光环新网、甚至南方地区还有些香港过来的小运营商。

这些小运营商都有一个特点,就是会cache文件,他们会为了减少网间结算带宽,而尽量想办法缓存文件,让他们的用户本地访问。

其次,对于很多中大型公司来说,他们也会搭建自己的缓存服务器。

另外,还有很多网站,自身都搭建或者在使用第三方的CDN,也都是缓存服务器。

所以,当下的中国网络情况,基本上就是缓存服务器在提供众多的服务。所以,你的开启压缩,如果不主动配合这些各种各样的缓存服务器,那么你out了,你会发现,你的很多努力,都是笑谈,并无实际作用。

如何适合当下的状况?如何才可以保证用户支持压缩时,网络间传递的就是你想给他的的压缩文件?

那么,请紧记以下要点,并逐个落实。

开启压缩时,需要针对压缩和非压缩文件,都返回Vary:Accept-Encoding头。

这个头部是告诉缓存服务器,要根据用户支持的编码方式提供对应的文件。

该项很重要,很多网站,只是对压缩文件开启该头。在缓存服务器中,如果给出的非压缩的文件不包含该头部,也就是告知缓存服务器,当用户请求时,不需要判断用户支持的编码格式,而直接将该文件传递。所以,最后导致用户请求到缓存服务器时,无论用户支持不支持压缩,都是直接返回非压缩的文件。

开启压缩时,需要同时对HTTP1.1和HTTP1.0均开启压缩。

大家都是认为,HTTP1.0协议的用户,肯定是特别老的用户,肯定是不支持压缩的,所以,很多网站,都是针对HTTP1.0协议提供非压缩文件。

但是,实际中,太多太多的缓存服务器,为了追求最大的兼容性,还在使用HTTP1.0协议。所以,当你只是对HTTP1.1协议开启压缩时,等于抛个媚眼给瞎子看。

例如,新浪的缓存服务器,也是HTTP1.0协议的,但是他们就很聪明的针对HTTP1.0也开启了压缩服务,如下图:

如何开启gzip和deflate压缩

上述就是小编为大家分享的如何开启gzip和deflate压缩了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何开启gzip和deflate压缩

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何开启gzip和deflate压缩

这期内容当中小编将会给大家带来有关如何开启gzip和deflate压缩,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。什么是压缩?大家还记得我们第一次接触winzip软件吗?非常神奇,一个文件,经过winz
2023-06-12

Apache如何开启GZIP压缩功能

这篇文章主要介绍“Apache如何开启GZIP压缩功能”,在日常操作中,相信很多人在Apache如何开启GZIP压缩功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Apache如何开启GZIP压缩功能”的疑
2023-06-05

Vite怎么开启Gzip压缩

这篇文章主要介绍“Vite怎么开启Gzip压缩”,在日常操作中,相信很多人在Vite怎么开启Gzip压缩问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vite怎么开启Gzip压缩”的疑惑有所帮助!接下来,请跟
2023-07-04

如何在Apache中启用gzip压缩

要在Apache服务器中启用gzip压缩,您可以按照以下步骤操作:打开Apache的配置文件。在大多数情况下,这个文件是httpd.conf或apache2.conf,位于/etc/apache2/目录下。搜索以下行并确保它们没有被注释掉(
如何在Apache中启用gzip压缩
2024-07-05

linux中wordpress gzip压缩怎么开启

这篇文章给大家分享的是有关linux中wordpress gzip压缩怎么开启的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。简介 Gzip开启以后会将输出到用户浏览器的数据进行压缩的处理,这样就会减小通过网络传输
2023-06-13

Apache开启GZIP压缩功能方法

Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在linux平台。Gzip在现代浏览器中默认都是支持的,当一个纯文本文件使用Gzip压缩可以减少70%以上的文件大小,压缩后可以大大降低了
2022-06-04

Node.js服务器开启Gzip压缩教程

Gzip是什么 复制大神们的解释吧: GZIP最早由Jean-loup Gailly和Mark Adler创建,用于UNIX系统的文件压缩。我们在Linux中经常会用到后缀为.gz的文件,它们就是GZIP格式的。现今已经成为Internet
2022-06-04

IIS启用GZIP压缩js和css无效如何解决

这篇“IIS启用GZIP压缩js和css无效如何解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“IIS启用GZIP压缩js
2023-07-04

服务器端如何开启GZIP压缩功能(Apache、IIS、Nginx)

目录Apache如何开启GZIP功能IIS如何开启GZIP功能Nginx如何开启GZIP功能我们知道做好负载均衡对网站的正常运行,用户体验相当重要。在负载均衡中有一个必须要做的事情就是给服务器开启GZIP压缩功能,对用户请求的页面进行压缩处
2022-06-05

Drupal 启用缓存和Gzip压缩设置方法

Drupal4.x/5.x时代的性能问题在drupal6得到了非常大的提升.但是还有有更进的一步的性能优化:对页面和静态资源的启用缓存和GUsJBEzip压缩传输. Gzip现今已经成为Internet 上使用非常普遍的一种数据压缩格式,或
2022-06-12

如何在Linux中使用Gzip压缩和解压文件

这篇文章主要介绍“如何在Linux中使用Gzip压缩和解压文件”,在日常操作中,相信很多人在如何在Linux中使用Gzip压缩和解压文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何在Linux中使用Gz
2023-06-13

linux gzip压缩命令如何使用

这篇文章主要介绍“linux gzip压缩命令如何使用”,在日常操作中,相信很多人在linux gzip压缩命令如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux gzip压缩命令如何使用”的疑
2023-07-04

linux如何解压一个gzip格式的压缩包

本文详细介绍了如何在Linux中解压GZIP压缩包。它解释了gunzip、gzip-d和zcat命令的用法,并展示了如何使用通配符解压多个文件。此外,它还提供了有用的选项,并分享了额外的资源供进一步参考。
linux如何解压一个gzip格式的压缩包
2024-04-02

Nginx如何开启gzip配置

小编给大家分享一下Nginx如何开启gzip配置,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!nginx实现资源压缩的原理是通过ngx_http_gzip_mod
2023-06-14

linux如何创建一个gzip格式的压缩包

本文详细介绍了Linux系统中创建GZIP压缩包的命令。主要使用gzip命令,可指定压缩级别和文件。也可以使用tar命令和-z选项创建归档并自动压缩为GZIP格式。此外,还介绍了解压缩GZIP压缩包的gunzip命令。通过使用这些命令,用户可以有效压缩文件,减少文件大小并保持数据完整性。
linux如何创建一个gzip格式的压缩包
2024-04-02

VB.NET如何实现压缩和解压缩

这篇文章主要为大家展示了“VB.NET如何实现压缩和解压缩”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“VB.NET如何实现压缩和解压缩”这篇文章吧。VB.NET压缩和解压缩实现代码:Publi
2023-06-17

php如何判断服务器是否支持gzip压缩

本篇内容主要讲解“php如何判断服务器是否支持gzip压缩”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何判断服务器是否支持gzip压缩”吧!开GZIP有什么好处?Gzip功能是一种压缩
2023-06-20

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录