Nginx请求压缩如何实现(nginxbrotli压缩)

Nginx请求压缩如何实现(nginxbrotli压缩)

浏览次数:
信息来源: 用户投稿
更新日期: 2026-03-31
文章简介

gzip_min_length设置将被gzip压缩的响应的最小长度。长度仅由"Content-Length"响应报头字段确定。对于上游服务器返回不同的head来决定是不是要进行压缩,两种常见的一

2025阿里云双十一服务器活动

  • gzip_min_length

  • 设置将被gzip压缩的响应的最小长度。长度仅由"Content-Length"响应报头字段确定。

  • 对于上游服务器返回不同的head来决定是不是要进行压缩,两种常见的一种off一种any

  • 一般启用cache的话都是已经进行过压缩的所有可以规避一些细节

  • 作为反向代理时,针对于上游服务器返回的头信息进行压缩。

  • expired-启用压缩,如果header头中包含"Expires"头信息

  • no-cache-启用压缩,如果header头中包含"Cache-Control:no-cache"头信息

  • no-store-启用压缩,如果header头中包含"Cache-Control:no-store"头信息

  • private-启用压缩,如果header头中包含"Cache-Control:private"头信息

  • no_last_modified-启用压缩,如果header头中不包含"Last-Modified"头信息

  • no_etag-启用压缩,如果header头中不包含"ETag"头信息

  • auth-启用压缩,如果header头中包含"Authorization"头信息

  • 增加一个header,适配老的浏览器Vary:Accept-Encoding

  • 哪些mime类型的文件进行压缩。

  • 默认值:gzip_disable'msie6MSIE[4-6]\.MSIE6.0'

    gzip_buffers324k;#设置缓冲区大小

    gzip_comp_level5;#设置压缩等级1-9

    gzip_disable'msie6MSIE[4-6]\.MSIE6.0';#禁止哪些浏览器不使用压缩

    gzip_http_version1.1;#设置压缩所需要的最低的http版本。

    gzip_min_length20;#设置响应的数据最小限制,在这个限制之后再回进行压缩

    gzip_varyon;#增加一个header,适用于老的浏览器Vary:Accept-Encoding

    gzip_proxiedany;#无条件启动压缩

    #哪些mime类型的文件进行压缩

    #gzip_typestext/plainapplication/x-javascripttext/cssapplication/xml;

    text/xmlapplication/xmlapplication/atom+xmlapplication/rss+xmlapplication/xhtml+xmlimage/svg+xml

    text/javascriptapplication/javascriptapplication/x-javascript

    text/x-jsonapplication/jsonapplication/x-web-app-manifest+json

    text/csstext/plaintext/x-component

    font/opentypeapplication/x-font-ttfapplication/vnd.ms-fontobject

    当启动了gzip,我们的请求到nginx服务器上,nginx就已经给我们生产了responseheard但是数据还没有生成,他也不知道具体数据有多大,因为nginx是异步响应式请求,他一步一步来的,他先把header准备好然后请求内容去压缩,最后将两块内容合并去压缩,最后发过来,也就是因为异步导致他不知道具体大小。

    他是先将请求头返回然后数据在慢慢读。

    ----------------------------------响应体-------------------------------------------------

    Nginx请求压缩如何实现,nginxbrotli压缩

    Content-Type:application/json#响应结果

    Date:Mon,13Feb202309:13:19GMT

    Transfer-Encoding:chunked#传输的格式这个对应的就是length,这个是他会发送一个一个的包,当最后一个包是0表示传输结束

    ------------------------------------请求头-----------------------------------------------

    Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9

    Accept-Encoding:gzip,deflate

    Accept-Language:zh-CN,zh;q=0.9,en;q=0.8

    Upgrade-Insecure-Requests:1

    User-Agent:Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/109.0.0.0Safari/537.36

    https://www.fruan.com/post/configure--prefinx==/usr/local/nginx--with-http_gzip_static_module
  • 使用的需要将本地的资源文件进行压缩,压缩成xxx.gz的文件

    cp/usr/local/nginx/sbin/nginx/usr/local/nginx/sbin/nginx.old2

    mvnginx/usr/local/nginx/sbin/

    最后将新编译的nginx启动程序复制到/usr/local/nginx/sbin下做好之前程序复制。

  • cp/usr/local/nginx/sbin/nginx/usr/local/nginx/sbin/nginx.oid3

  • mv/tools/nginx-12.0/objs/nginx/usr/local/nginx/sbin/

  • load_module"/usr/local/nginx/modules/ngx_http_brotli_filter_module.so";

    load_module"/usr/local/nginx/modules/ngx_http_brotli_static_module.so";

  • 作用:指定进行压缩的文件最小的长度,如果小于这个值则不压缩。

    load_module"/usr/local/nginx/modules/ngx_http_brotli_filter_module.so";

    load_module"/usr/local/nginx/modules/ngx_http_brotli_static_module.so";

    brotli_staticon;#是否开启预先压缩,开启之后就会.br的压缩包

    brotli_comp_level6;#压缩等级

    brotli_buffers168k;#缓冲区大小,已经启用

    brotli_min_length20;#压缩时文件最小限制

    #对哪些mime.types类型进行压缩

    brotli_typestext/plaintext/csstext/javascriptapplication/javascripttext/xmlapplication/xmlapplication/xml+rssapplication/jsonimage/jpegimage/gifimage/png;

    curl-H'Accept-Encding:br'-I192.168.101.128/index.html

    [root@localhostsbin]#curl-HAccept-Encoding:br-Ihttp://192.168.101.128/static_page.html

    Date:Fri,17Feb202308:11:05GMT

    Last-Modified:Fri,17Feb202303:28:14GMT

    [root@localhostsbin]#curl-Ihttp://192.168.101.128/static_page.html

    Date:Fri,17Feb202308:11:54GMT

    Last-Modified:Fri,17Feb202303:28:14GMT

    ETag:W/"63eef44e-31"

    以上就是Nginx请求压缩如何实现的详细内容,更多请关注主机测评网其它相关文章!

    标签:
  • 什么是云存储(云存储有什么用)
    « 上一篇
    返回列表
    下一篇 »

    如本文对您有帮助,就请抽根烟吧!