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:
Lua
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-ada | LuaJIT FFI bindings to Ada — WHATWG-compliant and fast URL parser |
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 (https://github.com/client9/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-jq | LuaJIT FFI bindings to jq |
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 (https://code.google.com/p/snappy/) |
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-proxy | Reverse-proxying of websocket frames |
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 |