nginx如何开启Gzip压缩

 更新时间:2024年09月23日 10:22:55   作者:超级小的大杯柠檬水  
Gzip压缩能显著减小网站静态资源如css、js、html的体积,大幅提升加载速度,它通过服务器端压缩,浏览器端解压,适用于大多数现代浏览器,但应避免对已压缩的图片或大文件进行Gzip压缩,以免无效增加CPU负担,配置Gzip压缩需在nginx的http块内设置并重启nginx

一、为什么要开启Gzip压缩

启用Gzip压缩功能, 可以使网站的css、js 、xml、html 等静态资源在传输时进行压缩,经过Gzip压缩后资源可以变为原来的30%甚至更小,尽管这样会消耗一定的cpu资源,但是会节约大量的出口带宽来提高访问速度

Gzip 的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后解压并解析。浏览器那里不需要我们担心,因为目前的大多数浏览器都支持解析Gzip。

注意:不建议压缩图片和大文件:图片如jpg、png文件本身就会有压缩,所以就算开启gzip后,压缩前和压缩后大小没有多大区别,所以开启了反而会白白的浪费CPU资源。(如果优化可以可以图片的生命周期设置长一点,让客户端来缓存)

而大文件资源会消耗大量的cpu资源,且不一定有明显的效果。

二、nginx如何配置gzip

http块内或者在单个server块里添加后重启nginx ./nginx -s reload

#开启gzip
gzip  on;  
#低于1kb的资源不压缩 
gzip_min_length 1k;
#压缩级别1-9,越大压缩率越高,同时消耗cpu资源也越多,建议设置在5左右。 
gzip_comp_level 5; 
#需要压缩哪些响应类型的资源,多个空格隔开。不建议压缩图片.
gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css;  
#配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
gzip_disable "MSIE [1-6]\.";  
#是否添加“Vary: Accept-Encoding”响应头
gzip_vary on;

三、查看是否成功

可以看到Content-Encoding:gzip表示配置成功

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 部署前后端分离式nginx配置的完整步骤

    部署前后端分离式nginx配置的完整步骤

    这篇文章主要给大家介绍了关于如何部署前后端分离式nginx配置的完整步骤,文中通过示例代码介绍的非常详细,对大家学习或者使用nginx具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-06-06
  • 用Nginx反向代理Node.js的方法

    用Nginx反向代理Node.js的方法

    本篇文章主要介绍了用Nginx反向代理Node.js的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • 安装配置php-fpm来搭建Nginx+PHP的生产环境

    安装配置php-fpm来搭建Nginx+PHP的生产环境

    这篇文章主要介绍了安装配置php-fpm来搭建Nginx+PHP的生产环境的方法,php-fpm的作用是将FastCGI进程管理整合进PHP包,需要的朋友可以参考下
    2016-01-01
  • win10系统安装Nginx的详细步骤

    win10系统安装Nginx的详细步骤

    Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器,同时也提供了IMAP/POP3/SMTP服务,这篇文章主要介绍了win10系统安装Nginx的详细步骤,需要的朋友可以参考下
    2023-02-02
  • nginx中gzip_types匹配content-type的方式

    nginx中gzip_types匹配content-type的方式

    这篇文章主要介绍了nginx中gzip_types匹配content-type的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • 504 Gateway Timeout网关超时的根源及完美解决方法

    504 Gateway Timeout网关超时的根源及完美解决方法

    在日常开发和运维过程中,504 Gateway Timeout 错误是常见的网络问题之一,尤其是在使用反向代理(如 Nginx)或负载均衡时,遇到这种错误会导致网站无法访问,严重影响用户体验,这篇文章主要介绍了504 Gateway Timeout网关超时完美解决方法,需要的朋友可以参考下
    2025-08-08
  • Nginx代理时header头中带

    Nginx代理时header头中带"_"信息丢失问题的解决

    这篇文章主要给大家介绍了关于Nginx代理时header头中带"_"信息丢失问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-02-02
  • nginx临时搭建rtmp服务器的方法实现

    nginx临时搭建rtmp服务器的方法实现

    nginx是一款优秀的反向代理工具,通过Nginx自带的rtmp模块,也可以实现rtmp服务器的搭建,本文主要介绍了nginx临时搭建rtmp服务器,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • Nginx如何安装配置Lua支持

    Nginx如何安装配置Lua支持

    这篇文章主要介绍了Nginx如何安装配置Lua支持方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Nginx日志实现访问异常报警详解

    Nginx日志实现访问异常报警详解

    Nginx把遇到的不同级别的问题信息写到错误日志。error_log 指令配置记录到特定的文件,stderr,或者syslog,配置写到日志的最低级别信息。下面这篇文章主要介绍了利用Nginx日志实现访问异常报警的相关资料,需要的朋友可以参考下。
    2017-03-03

最新评论