Nginx学习之五:Nginx第三方模块
为什么80%的码农都做不了架构师?>>>
第三方模块
这些模块不被官方所支持,亦未必能跨越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 |
参考资料
github search
From: http://wiki.nginx.org/3rdPartyModulesChs
转载于:https://my.oschina.net/boonya/blog/287300
Nginx学习之五:Nginx第三方模块相关推荐
- Nginx学习(一)——Nginx基础知识
目录 1.Nginx学习(一)--Nginx基础知识 2.Nginx学习(二)--配置文件.反向代理与负载均衡 3.Nginx搭建HTTPS服务器 一.初试Nginx 一.下载安装 1.安装必要的一些 ...
- 【005】Nginx学习笔记-Nginx真实IP
[005]Nginx学习笔记-Nginx真实IP 真实IP 客户端真实IP 深入理解真实IP 实验一 实验二: 多个代理服务器的情况 实验三:利用realip模块获取客户端真实IP 实验四:伪装请求头 ...
- Nginx学习之Nginx高性能的实现原理
Nginx 采用的是多进程(单线程) & 多路IO复用模型,使用了 I/O 多路复用技术的 Nginx,就成了"并发事件驱动"的服务器,同时使用sendfile等技术,最终 ...
- 【Nginx学习】Nginx代理mysql数据库
文章目录 一.使用docker安装Nginx 1.安装Nginx 2 .启动容器 二.命令查看端口 1.查看Liunx端口占用 2.命令nmap端口扫描 3.docker容器的本机ip地址 三.doc ...
- Nginx学习之Nginx进程
Nginx学习 Nginx命令 ./nginx:启动Nginx: ./nginx -s stop:关闭Nginx,立即关闭,不管有没有已接受的请求: ./nginx -s reload:重新加载ngi ...
- Nginx学习之六-nginx核心进程模型
一.Nginx整体架构 正常执行中的nginx会有多个进程,最基本的有master process(监控进程,也叫做主进程)和woker process(工作进程),还可能有cache相关进程. 一个 ...
- Nginx学习之四-Nginx进程同步方式-自旋锁(spinlock)
自旋锁简介 Nginx框架使用了三种消息传递方式:共享内存.套接字.信号. Nginx主要使用了三种同步方式:原子操作.信号量.文件锁. 基于原子操作,nginx实现了一个自旋锁.自旋锁是一种非睡眠锁 ...
- nginx 学习笔记--Nginx正则表达式之匹配操作符
nginx可以在配置文件中对连接进行判断,已达到防止rewrite.盗链.对静态资源设置缓存以及浏览器限制等目的: 字符串表达式支持正则表达式,能设定大小写是否敏感. 1.~为区分大小写的匹配. 2. ...
- nginx安装第三方模块echo
要使用第三方模块ngx_echo的功能,请重新配置添加到nginx插件中 ##下载第三方模块 wget https://github.com/openresty/echo-nginx-module/a ...
最新文章
- Python模块MySQLdb操作mysql出现2019错误:Can't initialize character set utf-8
- js复制网站文字追加网站来源,网站版权
- 【Python】牛客的输入输出到底怎么整??
- VTK修炼之道16:图像处理_窗口分割和图像融合(ViewportvtkImageBlend)
- 第6章 服务模式 Service Interface(服务接口)
- nginx配置:支持phpfastcgi,nginx和php-cgi通信,部分nginx常量解释
- SpringBoot 整合SpringSecurity示例实现前后分离权限注解+JWT登录认证
- NumPy库—random模块
- Android APP原型设计,五款移动APP在线原型设计工具,值得收藏
- 文件同步备份工具—Second Copy
- visio软件接口流程图_绘制流程图——Visio可以让你事半功倍哦!
- 利用numpy自带的polyfit和polyval函数进行回归分析
- zotero导出所有的bib文件
- 痞子衡嵌入式:在i.MXRT1170上启动含DQS的Octal Flash可不严格设Dummy Cycle (以MT35XU512为例)...
- 老徐自述:《软件自动化测试实战解析_基于Python3编程语言》
- cityengine导入并创建路网
- 科技云报道:“奇袭”混合云,青云QingCloud站上C位
- 西安python程序员薪资_最新程序员薪资统计来了!Java均薪16K,Python22k!你拖后腿了吗?...
- 【转】太用力的人跑不远
- Springboot:商品库存并发更新,乐观锁失败重试机制
热门文章
- 网页效果图设计之色彩索引
- 瑞友虚拟服务器网页登录,瑞友云端虚拟专网系统
- 我的世界java版gamemode指令_我的世界切换生存和创造模式的命令是什么?
- cad2020 开始_如何设置CAD2020经典模式,原来这么简单,一起来看看
- python弹幕代码_只需3 行代码就可以获取B站(弹幕、评论、用户)数据
- 你可以去学python_你是怎么学好Python的?
- POJ 3613 快速幂+Floyd变形(求限制k条路径的最短路)
- 【Android 插件化】Hook 插件化框架 ( 从源码角度分析加载资源流程 | Hook 点选择 | 资源冲突解决方案 )
- 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 二 )
- 【Android 文件管理】分区存储 ( 创建与查询图片文件 )