nginx源码学习资源

转自:nginx源码学习资源

nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源。

首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的。
看了nginx源码,发现这是一份完全没有注释,完全没有配置文档的代码。

现在你最希望要的是一份注释版的nginx源码,可以从下面的链接中下载一份:
这份注释版源码会不断进行更新的

好了,第一个问题, nginx的main函数在哪里呢?
src/core/nginx.c

第二个问题,nginx启动的时候都做了哪些事情呢?参考下面两篇文章:

nginx启动的命令是nginx,重启的命令是nginx -s reload, nginx有master和worker进程,他们之间是怎么通信的呢?可以参考下面的文章:

好了,是不是手痒痒了?希望对nginx进行调试?
你是Linux程序员? 使用gdb调试吧。

gdb调试nginx:
你是windows程序员?想使用vs调试nginx?行
这有个可调试工程:

如何编写nginx的第三方模块?miller的文章很好,codinglabs的文章也不错,推荐

nginx的基本类型有非常多,那些类型各个类型是那些意思
这类的文章有很多很多,google一下能找出很多
推荐几个人的博客:

nginx开发从入门到精通 
http://tengine.taobao.org/book/
注:淘宝一批大牛做的,很多东西讲的非常详细。也很系统,强烈推荐

nginx模块开发入门 
http://www.162cm.com/p/ngx_ext.html
注:入门教程

教程书:
《深入理解Nginx -- 模块开发与架构解析》 陶辉
注:非常系统的讲了nginx的模块开发与架构


从源码编译nginx:
https://nginx.org/en/docs/configure.html