专栏中心

EEPW首页 > 专栏 > lua-zlib模块安装与使用

lua-zlib模块安装与使用

发布人:天翼云开发者 时间:2025-11-07 来源:工程师 发布文章

本文分享自天翼云开发者社区《lua-zlib模块安装与使用》.作者:lucky_lyw

lua-zlib包用于nginx上对gzip数据进行解压缩,可将lua-zlib编译成一个动态链接库zlib.so,便于lua引用。

github:https://github.com/brimworks/lua-zlib

 

1. 安装

1.1 检查是否安装zlib

$ rpm -qa zlib
zlib-1.2.3-29.el6.x86_64

1.2 安装cmake

检查gcc, g++, make是否安装

gcc -vg++ -vmake -v

若未安装,则:yum install -y gcc gcc-c++ make automake

安装cmake

cd /usr/local
wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gztar -xvzf cmake-2.8.10.2.tar.gz
cd cmake-2.8.10.2./bootstrap
gmake
gmake install
 
检查cmake是否安装成功:
$ cmake --version
cmake version 2.8.10.2

1.3 安装lua-zlib

(1)downloadcd /usr/localwget https://github.com/brimworks/lua-zlib/archive/master.zipunzip lua-zlib-master.zip(2)cmakecd /usr/local/lua-zlib-master
cmake -DLUA_INCLUDE_DIR=/usr/local/openresty/luajit/include/luajit-2.1 -DLUA_LIBRARIES=/usr/local/openresty/luajit/lib -DUSE_LUAJIT=ON -DUSE_LUA=OFFmakecp zlib.so /usr/local/openresty/lualib/zlib.so

 

2. zlib包使用

local zip = require(zlib) 
   
    local v,mv,pv=zip.version()
    local str_data
    -- ngx.log(ngx.INFO, "zip.version(): ", v, ", ", mv, ", ", pv)


    local req_cotent_encoding = ngx.req.get_headers()["Content-Encoding"]
    if req_cotent_encoding == "gzip" then
        ngx.log(ngx.INFO, "req_cotent_encoding = gzip")
        -- 解压缩        local inflate = zip.inflate()
        str_data = inflate(data)
        ngx.log(ngx.INFO, "raw data: ", data, ", after inflate str_data: ", str_data)
        -- 压缩验证
        --[[local deflate = zip.deflate()
        str_data = deflate(data)
        ngx.log(ngx.INFO, "raw data: ", data, ", after deflate str_data: ", str_data)]]--    else
        ngx.log(ngx.INFO, "req_cotent_encoding ~= gzip")
        str_data = data
    end


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: 网络 CDN

相关推荐

Coherent推出全系列InP技术组合

AI网络架构或将进入“无交换机”时代

2025-06-12

网络爬虫开发常用框架Scrapy

Addison.Wesley.Advanced.Linux.Networking.part2.rar

超高速光纤创下全球速度纪录:在欧式距离上达到1.02拍比特每秒

GSMA:全球 43% 的人口仍未使用移动互联网

中国首例!我国对美国相关光纤产品发起反规避调查

Addison.Wesley.Advanced.Linux.Networking.part3.rar

教程:设置内置逻辑的 IO-Link 网络

我国西部首个,重庆算力互联互通平台在两江新区上线

Addison.Wesley.Advanced.Linux.Networking.part1.rar

8、16位MCU接入TCPIP网络方案

资源下载 2008-01-05

Addison.Wesley.Advanced.Linux.Networking.part4.rar

SDN可编程交换芯片架构核心:RMT,一个可编程的网络DSA

网络与存储 2024-07-31

HTML 解析之 BeautifulSoup

更多 培训课堂
更多 焦点
更多 视频

技术专区