2009-07-27 113 views
32

我正在尝试查找关于如何为Nginx Web服务器构建模块/插件的教程。如何编写Nginx模块?

有人可以帮忙,我似乎无法找到合适的教程。

回答

26

从文档报价:

Evan Miller写了确定的guide to Nginx module development。 但它的某些部分有点过时了。你已被警告。

github搜索出现了Nginx Development Kit。它似乎是 更新。

从我自己的亲身经历,Evan Miller's guide是一个很大的帮助。您还必须对NGINX的工作原理有深入的了解。 Agentzh's tutorial可以帮助你。

读取his modules的源代码也总是有帮助。

还有一个video tutorial,我还没有检查,但它似乎很好。

13

http://www.evanmiller.org/nginx-modules-guide.html

Nginx的具有模块链。当Nginx需要对一个响应进行gzip或者chunk-encode时,它会发出一个模块来完成这项工作。当Nginx根据IP地址或HTTP认证凭证阻止对资源的访问时,模块会进行转向。当Nginx与Memcache或FastCGI服务器通信时,一个模块就是对讲机...

本指南的目的是教你详细了解Nginx的模块链......当你完成了指南,您将能够设计和制作高质量的模块,使Nginx能够完成以前无法做到的事情。 Nginx的模块系统有很多细微之处和细节,所以你可能会经常想回顾一下这个文档。我试图让尽可能明确的概念,但我会坦率地说,写Nginx的模块仍然可以努力工作......

+0

你有什么进展吗?我在这里遇到同样的情况。看看我的帖子:http://stackoverflow.com/questions/4204812/nginx-module-development-with-mysql-posible – PartySoft 2010-11-17 13:35:02

+0

我觉得这一点不是明确的,因为它应该是在另外一个奇妙的职位是这里:'最后,为nginx的配置添加一个模块指令(默认是/usr/local/nginx/conf/nginx.conf)以启用该模块的位置。 location =/hello { hello_world; }' – jbg 2011-07-05 07:42:02