Skip to content

Lua Scripting

NGINX can be empowered with the scripting power of Lua language. You don't need to use Openresty for that. With our extensive collection of Lua library packages, you have something even better and in one place.

Simply install nginx-module-lua to extend NGINX with Lua scripting capability. And 100 (!) Lua libraries are available with separate easy-to-install packages.

See the whole list below:


NGINX Lua Module is a high-level Lua API for Nginx. It allows scripting Nginx without touching the C code. Multiple Lua library packages are made available by GetPageSpeed to build ultimate Nginx configurations, powered by Lua.

Package Name Description
lua-resty-acme Automatic Let's Encrypt certificate serving and Lua implementation of ACMEv2 procotol
lua-resty-auto-ssl On the fly (and free) SSL registration and renewal inside nginx-module-lua/nginx with Let's Encrypt
lua-resty-aws-auth Lua resty module to calculate AWS signature v4 authorization header
lua-resty-aws-sdk Make api call to aws services
lua-resty-balancer A generic consistent hash implementation for nginx-module-lua
lua-resty-base-encoding A faster alternative to base64 encoding and provides missing base encoding for nginx-module-lua application
lua-resty-cache Http cache to redis, can server stale response, and using "lua-resty-lock" only allow one request to populate a new cache
lua-resty-checkups Manage NGINX upstreams in pure Lua
lua-resty-consul-event Consul Events HTTP API Wrapper
lua-resty-consul Library to interface with the consul HTTP API from nginx-module-lua
lua-resty-core New FFI-based API for lua-nginx-module
lua-resty-cors It's the implement of CORS on nginx-module-lua
lua-resty-counter Lock-free counter for nginx-module-lua
lua-resty-ctxdump Stash and apply the old ngx.ctx for avoiding being destoried after NGINX internal redirect happens
lua-resty-dns-server Lua DNS server driver for nginx-module-lua
lua-resty-dns DNS resolver for nginx-module-lua
lua-resty-etcd Nonblocking Lua etcd driver library for nginx-module-lua
lua-resty-exec Run external programs in nginx-module-lua without spawning a shell or blocking
lua-resty-feishu-auth 适用于 nginx-module-lua 的基于飞书组织架构的登录认证
lua-resty-fileinfo LuaJIT FFI bindings to libmagic, magic number recognition library - tries to determine file types
lua-resty-ftpclient Lua ftp client driver for nginx-module-lua based on the cosocket API
lua-resty-global-throttle General purpose flow control with shared storage support
lua-resty-healthcheck Healthcheck library for nginx-module-lua to validate upstream service status
lua-resty-hmac HMAC functions for nginx-module-lua and LuaJIT
lua-resty-hoedown LuaJIT FFI bindings to Hoedown, a standards compliant, fast, secure markdown processing library in C
lua-resty-http2 The HTTP/2 Protocol (Client Side) Implementation for nginx-module-lua
lua-resty-http Lua HTTP client cosocket driver for nginx-module-lua
lua-resty-httpipe Lua HTTP client cosocket driver for nginx-module-lua, interfaces are more flexible
lua-resty-hyperscan Hyperscan for nginx-module-lua
lua-resty-influx Nginx-module-lua client for InfluxDB
lua-resty-ini Ini parser for nginx-module-lua
lua-resty-injection LuaJIT FFI bindings to libinjection (
lua-resty-iputils Utility functions for working with IP addresses in nginx-module-lua
lua-resty-jit-uuid Fast and dependency-free UUID library for LuaJIT/nginx-module-lua
lua-resty-jsonrpc-batch JSONRPC batch protocol module for nginx-module-lua
lua-resty-jump-consistent-hash Consistent hash for nginx-module-lua
lua-resty-jwt JWT For The Great nginx-module-lua
lua-resty-kafka Lua kafka client driver for nginx-module-lua based on the cosocket API
lua-resty-libcjson LuaJIT FFI-based cJSON library for nginx-module-lua
lua-resty-libr3 High-performance path dispatching library base on libr3 for nginx-module-lua
lua-resty-limit-rate Lua module for limiting request rate for nginx-module-lua, using the "token bucket" method
lua-resty-limit-traffic Lua library for limiting and controlling traffic in nginx-module-lua
lua-resty-lmdb Safe API for manipulating LMDB databases using nginx-module-lua
lua-resty-locations Lua library implementing nginx style location uri matching
lua-resty-lock Simple nonblocking lock API for nginx-module-lua based on shared memory dictionaries
lua-resty-logger-socket Raw-socket-based Logger Library for NGINX (based on nginx-module-lua)
lua-resty-lrucache Lua-land LRU Cache based on LuaJIT FFI
lua-resty-macaroons LuaJIT FFI Bindings to libmacaroons – Macaroons are flexible authorization credentials that support decentralized delegation, attenuation, and verification
lua-resty-mail A high-level, easy to use, and non-blocking email and SMTP library for nginx-module-lua
lua-resty-maxminddb A Lua library for reading MaxMind's Geolocation database
lua-resty-memcached Lua memcached client driver for nginx-module-lua based on the cosocket API
lua-resty-mlcache Layered caching library for nginx-module-lua
lua-resty-multiplexer Transparent port service multiplexer for stream subsystem
lua-resty-murmurhash2 LuaJIT MurmurHash 2 bindings to NGINX / nginx-module-lua murmurhash2 implementation
lua-resty-mysql Nonblocking Lua MySQL driver library for nginx-module-lua
lua-resty-nettle LuaJIT FFI bindings for Nettle (a low-level cryptographic library)
lua-resty-nsq Lua nsq client driver for nginx-module-lua based on the cosocket API
lua-resty-ntlm Nginx ntlm module implemented by lua
lua-resty-openidc OpenID Connect Relying Party and OAuth 2.0 Resource Server implementation in Lua for NGINX / nginx-module-lua
lua-resty-openssl FFI-based OpenSSL binding for nginx-module-lua
lua-resty-perf A small ngx resty lua library to benchmark memory and throughput of a function
lua-resty-prettycjson Lua cJSON Pretty Formatter
lua-resty-pubsub Lua Pubsub client driver for nginx-module-lua based on the cosocket API
lua-resty-qless-web Port of Qless' web interface to nginx-module-lua environment
lua-resty-qless Lua binding to Qless (Queue / Pipeline management) for nginx-module-lua / Redis
lua-resty-rabbitmqstomp Opinionated Lua RabbitMQ client library for nginx-module-lua apps based on the cosocket API
lua-resty-rack A simple and extensible HTTP server framework for nginx-module-lua
lua-resty-radixtree Adaptive Radix Trees implemented in Lua / LuaJIT
lua-resty-redis-connector Connection utilities for lua-resty-redis
lua-resty-redis-ratelimit Limit the request processing rate between multiple NGINX instances backed by Redis
lua-resty-redis-util Nginx-module-lua-resty-redis 封装工具类
lua-resty-redis Lua redis client driver for nginx-module-lua based on the cosocket API
lua-resty-repl Interactive console (REPL) for nginx-module-lua and luajit code
lua-resty-reqargs Read application/x-www-form-urlencoded, multipart/form-data, and application/json request args
lua-resty-requests Yet Another HTTP library for nginx-module-lua - For human beings!
lua-resty-riak Lua riak protocol buffer client driver for nginx-module-lua based on the cosocket API
lua-resty-router Lua http router for nginx-module-lua
lua-resty-rsa RSA encrypt/decrypt & sign/verify for nginx-module-luaJIT
lua-resty-scrypt LuaJIT FFI-based scrypt library for nginx-module-lua
lua-resty-session Session library for nginx-module-lua – flexible and secure
lua-resty-shell Lua module for nonblocking system shell command executions
lua-resty-signal Lua library for killing or sending signals to UNIX processes
lua-resty-smtp Send mail with NGINX
lua-resty-snappy LuaJIT FFI bindings for Snappy, a fast compressor/decompressor (
lua-resty-sniproxy SNI Proxy based on stream-lua-nginx-module
lua-resty-socket Automatic LuaSocket/cosockets compatibility module
lua-resty-stats Is a statistical module for nginx base on nginx-module-lua, Statistical key and values are configurable, can use the nginx core's variables and this module's variables. The statistical result store in mongodb
lua-resty-string String utilities and common hash functions for nginx-module-lua and LuaJIT
lua-resty-t1k Lua implementation of the T1K protocol for Chaitin/SafeLine WAF
lua-resty-tags A small DSL for building HTML documents
lua-resty-tarantool Library for working with tarantool from nginx with the embedded Lua module or with nginx-module-lua
lua-resty-template Templating Engine (HTML) for Lua and nginx-module-lua
lua-resty-test Lua test frame for nginx-module-lua based on nginx-module-lua
lua-resty-timer Extended timers for nginx-module-lua
lua-resty-tlc General two level cache (lrucache + shared dict)
lua-resty-tsort Performs a topological sort on input data
lua-resty-txid Generate sortable, unique transaction or request IDs for nginx-module-lua/nginx
lua-resty-upload Streaming reader and parser for http file uploading based on nginx-module-lua cosocket
lua-resty-upstream-healthcheck Health Checker for NGINX Upstream Servers in Pure Lua
lua-resty-upstream Upstream connection load balancing and failover module for nginx-module-lua
lua-resty-uuid LuaJIT FFI bindings for libuuid, a DCE compatible Universally Unique Identifier library
lua-resty-validation Validation Library (Input Validation and Filtering) for Lua and nginx-module-lua
lua-resty-vhost Hostname matching library for nginx-module-lua
lua-resty-waf High-performance WAF built on nginx-module-lua stack
lua-resty-weauth 适用于 nginx-module-lua 的基于企业微信组织架构的登录认证
lua-resty-websocket WebSocket support for nginx-module-lua module
lua-resty-woothee Woothee Lua-nginx-module-lua implementation
lua-resty-worker-events Cross Worker Events for NGINX in Pure Lua
lua-resty-xxhash LuaJIT FFI-bindings to xxHash, an Extremely fast non-cryptographic hash algorithm