第三方模块
这些模块不被官方所支持,亦未必能跨越Nginx的版本兼容。不过其中有些模块证明是对多数用户是有用的。只在于个人的风险问题。
编译第三方模块
第三方模块和 Nginx资源是一起被编译过的.在资源目录键入:
./configure --add-module=/path/to/module1/source \
--add-module=/path/to/module2/source
所需参数可以尽可能多地使用--add-module 来设置。请注意,某些模块可能需要额外的系统安装库支持。
编写你自己的模块
Evan Miller 已经被写到 definitive guide 的 Nginx模块的部署中. 但它的某些部分是有点过时了。你已经被警告。
Nginx Development Kit已放在github资源探索中,您可以获取到最新的更新。另外您还可以参阅本页下方方的工具。
知名模块
Name | Description | Author | Link |
---|---|---|---|
Accept Language | Parses the Accept-Language header and gives the most suitable locale from a list of supported locales. |
Guillaume Maury | Download |
Access Key | Denies access unless the request URL contains an access key. | Mykola Grechukh | Download |
AFCGI | Asynchronous/multiplexing FastCGI for nginx (incl. ref server implementation) | rsms | Download |
Akamai G2O | Restricts access to content to Akamai edge servers using G2O headers | refractalize | Download |
Array Var | Add support for array variables to nginx config files | agentzh | Download |
Auth Digest | HTTP Digest Authentication. | Christian Swinehart | Download |
Auth PAM | HTTP Basic Authentication using PAM. | Sergio Talens-Oliag | Download |
Auth Request | Allows authorization based on subrequest result. | Maxim Dounin | Download |
Auto Lib | Reuse pre-compiled/installed versions of OpenSSL, PCRE and Zlib without re-compiling them each time Nginx is compiled | Marcus Clyne | Download |
AWS auth | Generate security headers for GET requests to Amazon S3. | Arvind Jayaprakash | Download |
Backtrace | A nginx module to dump backtrace case a worker process exits abnormally. | Tengine | Download |
Cache Purge | Module adding ability to purge content from FastCGI, proxy, and uWSGI caches. | FRiCKLE | Download |
Chunkin | HTTP 1.1 chunked-encoding request body support for Nginx. | agentzh | Download |
Concat | This module can concatenate files in a given context: CSS and JS files usually | Tengine | Download |
Circle GIF | Generates simple circle images with the colors and size specified in the URL. | Evan Miller | Download |
CT++ | Embeds CT++ (or CTPP2) VM, the execution part of a high-performance template engine system. | Valentin V. Bartenev | Download |
Development Kit | An extension to the core functionality of Nginx which can be used as a basis for other modules | Marcus Clyne | Download |
Drizzle | Make nginx talk directly to mysql and drizzle by libdrizzle. | chaoslawful, agentzh, Piotr Sikora | Download |
Dynamic etags | Nginx module for etags on dynamic content | kali | Download |
Echo | Brings "echo", "sleep", "time", "exec", and more shell-style goodies to Nginx config file. | agentzh | Download |
Enhanced Memcached | Repackaging of the standard memcached module to add features : custom http headers, hash keys, store entries in memcached with post http request, flush, key namespace, send 304 when no modification | Bertrand Paquet | Download |
Encrypted Session | encrypt and decrypt nginx variable values, can be used for light-weight session-based authentication | agentzh | Download |
Eval | A module for evaluating memcached or proxy response into variable. | vkholodkov | Download |
Eval (agentzh's fork) | Enhanced ngx_eval that can capture arbitrary subrequest's responses into nginx variables (can even with output filters enabled) | agentzh | Download |
Expressz | First of the Expressz lineup modules, Off-loading image and file/stream compression to (a) GPU(s). | Jason Giedymin at AcronymLabs | |
EY Balancer | Adds a request queue to Nginx that allows the limiting of concurrent requests passed to the upstream. | Ry Dahl | Download |
Fancy Indexes | Like the built-in autoindex module, but fancier. | Adrian Perez de Castro | Download |
Form Input | This module reads HTTP POST request body and parse the arguments into nginx variables. | Calio, agentzh | Download |
Foot filter | This module implements a body filter that adds a given string to the page footer. | Tengine | Download |
GeoIP | Country code lookups via the MaxMind GeoIP API. | SPIL GAMES | File:Nginx-geoip-0.2.tar.gz |
GridFS | Nginx module for serving files from MongoDB's GridFS. | mdirolf | Download |
Headers More | Set and clear input and output headers...more than "add"! | agentzh | Download |
HTTP Healthcheck | Health check HTTP servers inside an upstream so you don't forward requests to bad hosts | Jack Lindamood | |
HTTP Accounting | Realtime netflow and status code monitor solution for nginx, need less memory and cpu than realtime log analyzing. Useful for http traffic accounting based on nginx config logic ( per-location-traffic or per-server-traffic ). | Liu Lantao | Download |
HTTP Push | Turn Nginx into an adept long-polling HTTP Push (Comet) server. | Leo Ponomarev | Download |
HTTP Push Stream | Turn Nginx into an adept stream HTTP Push (Comet) server. | Wandenberg Peixoto | Download |
HTTP Redis | Redis support. | Sergey A. Osokin <osa@FreeBSD.ORG.ru> | Download |
JavaScript | Embedding SpiderMonkey. Full port of Perl module and more. | Peter Leonov | Download |
Iconv | A character encoding conversion nginx module using libiconv. | Calio, agentzh | Download |
Log Request Speed | Log the time it took to process each request. | Mauro Stettler | |
Lower Upper Case | Simple module to upper-/lowercase a string in the Nginx config | Mauro Stettler | Download |
Lua | Embed the power of Lua into nginx | chaoslawful, agentzh | Download |
Luafile | Embed the power of Lua into nginx very easy. | alacner | Download |
Memc | An extended version of the standard memcached module that supports set, add, delete, and many more memcached commands. | agentzh | Download |
ModSecurity | Web application firewall. | Alan Silva, Trustwave | |
Mogilefs | Implements a MogileFS client, provides a replace to the Perlbal reverse proxy of the original MogileFS. | Valery Kholodkov | Download |
Mongo | Upstream module that allows nginx to communicate directly with MongoDB database. | FRiCKLE & Simpl.it | Download |
MP4 Streaming Lite | Will seek to a certain time within H.264/MP4 files when provided with a "start" parameter in the URL. | Jiang Hong | Download |
Naxsi | Web Application Firewall for nginx. | Thibault Koechlin | Download |
Notice | Serve static file to POST requests. | Keith Rarick | Download |
OwnerMatch | This module provides a simple file owner-based access control. | Heiher | Download |
PHP-Memache Standard Hash | This is a loadbalancer that imitates the PHP-Memcache standard hash's behaviour | Mauro Stettler | Download |
PHP Session Parser | Extract values that are stored in a serialized PHP session | Mauro Stettler | Download |
Postgres | Upstream module that allows nginx to communicate directly with PostgreSQL database. | FRiCKLE | Download |
Pubcookie | Adds Pubcookie-based cross-site authentication method to Nginx. | Vitki | Download |
RDS CSV | Help ngx_drizzle, ngx_postgres, and others emit Comma-Separated Values (CSV). | agentzh | Download |
RDS JSON | Help ngx_drizzle, ngx_postgres, and others emit JSON data. | agentzh | Download |
Redis2 | Upstream module for the full Redis 2.0 protocol | agentzh | Download |
Roboo | HTTP Robot mitigator utilizing advanced non-interactive HTTP challenge/response mechanisms | Yuri Gushin, Alex Behar | Download |
RRD Graph | This module provides an HTTP interface to RRDtool's graphing facilities. | Evan Miller | Download |
RTMP | RTMP protocol support. Live streaming and video on demand. | Roman Arutyunyan | Download |
Secure Download | Create expiring links. | Mauro Stettler, Szymon Modzelewski | Download |
Set CConv | Conversion between Simplified Chinese and Traditional Chinese at rewrite phase | Liseen Wan | Download |
Set Hash | Set a variable to a variety of hash functions (upper/lowercase), including MD5, SHA1 and Murmurhash 2 | Marcus Clyne | Download |
Set Lang | Set a variable to indicate the language based on a variety of sources including cookies, GET/POST variables, Accept Language header and more | Marcus Clyne | Download |
Set Misc | Various set_xxx directives added to nginx's rewrite module (md5/sha1, sql/json quoting, and many more) | agentzh, Calio, shrimp | Download |
sFlow | Operational performance monitoring with standard sFlow protocol | Neil McKee | Download |
Slice | Nginx module for serving a file in slices (reverse byte-range). | Tengine | Download |
SlowFS Cache | Module adding ability to cache static files. | FRiCKLE | Download |
SPNEGO | Support for SPNEGO/gssapi in nginx. | mike503/muhgatus | Download |
SR Cache | Transparent subrequest-based caching layout for arbitrary nginx locations (can be used with ngx_memc + memcached!) | agentzh | Download |
Static etags | Nginx doesn't generate etags for static content. I'd like it to. Let's see if I can remember some C from college. | mikewest | Download |
Statsd | Adds the ability for Nginx to interacting with statsd. | zebrafishlabs | Download |
Sticky upstream | A nginx module to add an upstream server persistance using cookies. | Jérôme Loyet | Download |
Strip | Whitespace remover. | Evan Miller | File:Mod strip-0.1.tar.gz |
Substitutions | A filter module which can do both regular expression and fixed string substitutions on response bodies. | Weibin Yao | Download |
Supervisord | Module providing nginx with API to communicate with supervisord and manage (start/stop) backends on-demand. | FRiCKLE | Download |
Upload | Parses multipart/form-data allowing arbitrary handling of uploaded files. |
Valery Kholodkov | Download |
Upload Progress | Tracks and reports upload progress. | Brice Figureau | Download |
Upstream Consistent Hash | Select backend based on Consistent hash ring. | Mauro Stettler | Download |
Upstream Fair Balancer | Sends an incoming request to the least-busy backend server, rather than distributing requests round-robin. | Gregory Nosek | Download |
Upstream Hash | Provides simple upstream load distribution by hashing a configurable variable. | Evan Miller | Download |
Upstream Keepalive | Provides keep-alive connections to memcached upstreams. | Maxim Dounin | Download |
User-agent | A more powerful module than the Native BrowserModule | Tengine | Download |
Video Thumb Extractor | Nginx module to extract thumbs from a video file. | Wandenberg Peixoto | Download |
WSGI | WSGI implementation for Nginx. Allows easy deployment of Python applications. | Manlio Perillo | Download |
XSS | Native support for cross-site scripting (XSS) in an nginx. | agentzh | Download |
Zip | Assemble ZIP archives on the fly. | Evan Miller | Download |
Extended status module | Extended status module for nginx | 최영석(Choi Youngseok), 李金虎(Li Jinhu) | Download |
工具模块开发
Name | Description | Author | Link |
---|---|---|---|
Nginx Auto Lib Core | Reusable file for module developers to include with their modules to easily and consistently handle including external libraries; used in the Auto Lib module and included in the Nginx Development Kit | Marcus Clyne | Download |
Nginx Development Kit | An extension to the core functionality of Nginx which can be used as a basis for other modules | Marcus Clyne | Download |
第三方补丁
这些补丁必须应用到Nginx的源代码树。这里没有保证这些补丁将适用于Nginx的特定版本。 通过第三方模块,这些补丁是不会被Nginx官方所支持的。您的处理效果可能会有所不同。
Description | Author | Link |
---|---|---|
Log to syslog. | Marlon de Boer | Patch for version 0.8.49 with 'sh is not bash' fix | Syslog Patch for Nginx 0.8.54+ |
Disable nginx's memory pool to help valgrind and other tools (for nginx C developers only) | shrimp,agentzh | Git repository for the patch |
SSL Session tickets distributed via memcached | Matthew Palmer | Git repository for changes |
Migration工具
Name | Description | Author | Link |
---|---|---|---|
Apache2Nginx | A command line tool, which can be used to generate nginx config file according to given config files of Apache | 李德(Reed), 李金虎(Li Jinhu), 최영석(Choi Youngseok) | Download |
参考资料
From: http://wiki.nginx.org/3rdPartyModulesChs
来源:oschina
链接:https://my.oschina.net/u/592236/blog/287300