首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的。

看了nginx源码,发现这是一份完全没有注释,完全没有配置文档的代码。

现在你最希望要的是一份注释版的nginx源码,可以从下面的链接中下载一份:

https://github.com/jianfengye/nginx-1.0.14_comment

这份注释版源码会不断进行更新的

好了,第一个问题, nginx的main函数在哪里呢?

src/core/nginx.c

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

http://www.pagefault.info/?p=188

http://www.pagefault.info/?p=201&cpage=1

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

http://simohayha.iteye.com/blog/467940

好了,是不是手痒痒了?希望对nginx进行调试?

你是Linux程序员? 使用gdb调试吧。

nginx如何调试  http://doyoueat.iteye.com/blog/1291164

gdb调试nginx:

http://www.cnblogs.com/yjf512/archive/2012/05/10/2494635.html

你是windows程序员?想使用vs调试nginx?行

这有个可调试工程:

http://liyongping.sinaapp.com/?p=116

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

http://www.codinglabs.org/html/intro-of-nginx-module-development.html

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

nginx的基本类型有非常多,那些类型各个类型是那些意思

这类的文章有很多很多,google一下能找出很多

推荐几个人的博客:

http://blog.csdn.net/livelylittlefish/article/details/7262750

http://blog.csdn.net/dingyujie/article/details/7162919

nginx开发从入门到精通  http://tengine.taobao.org/book/

注:淘宝一批大牛做的,很多东西讲的非常详细。也很系统,强烈推荐

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

注:入门教程

教程书:

《深入理解Nginx -- 模块开发与架构解析》 陶辉

注:非常系统的讲了nginx的模块开发与架构

《深入剖析Nginx》 高群凯

nginx源码学习 资料的更多相关文章

  1. nginx源码学习资源(不断更新)

    nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源. 首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的. 看了nginx源码,发现这是一份完全没 ...

  2. nginx源码学习资源

    http://www.cnblogs.com/yjf512/archive/2012/06/13/2548515.html nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源 ...

  3. nginx源码学习资源(不断更新)转

    原文地址:http://www.cnblogs.com/yjf512/archive/2012/06/13/2548515.html nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx ...

  4. nginx源码学习_源码结构

    nginx的优秀除了体现在程序结构以及代码风格上,nginx的源码组织也同样简洁明了,目录结构层次结构清晰,值得我们去学习.nginx的源码目录与nginx的模块化以及功能的划分是紧密结合,这也使得我 ...

  5. Spring源码学习资料

    未完待续.. github地址 https://github.com/spring-projects 学习地址 https://github.com/code4craft/tiny-spring 推荐 ...

  6. nginx源码学习----内存池

    最近在进行监控平台的设计,之前一直觉得C/C++中最棘手的部分是内存的管理上,远不止new/delete.malloc/free这么简单.随着代码量的递增,程序结构复杂度的提高.各种内存方面的问题悄然 ...

  7. nginx源码学习_数据结构(ngx_pool_t)

    nginx中关于ngx_pool_t的数据结构位于src/core/ngx_palloc.c和src/core/ngx_palloc.h中,该数据结构主要是和内存池相关的,写下这篇博客前参考了网上很多 ...

  8. nginx源码学习_数据结构(ngx_int_t)

    nginx中关于整型的数据结构位于src/core/ngx_config.h中 结构比较简单,就是一个typedef的操作,具体如下: typedef intptr_t ngx_int_t; type ...

  9. nginx源码学习_数据结构(ngx_str_t)

    nginx中关于字符串的数据结构位于src/core/ngx_string.c和src/core/ngx_string.h中 先来看一下数据结构: typedef struct { size_t le ...

随机推荐

  1. 【Udacity并行计算课程笔记】- lesson 1 The GPU Programming Model

    一.传统的提高计算速度的方法 faster clocks (设置更快的时钟) more work over per clock cycle(每个时钟周期做更多的工作) more processors( ...

  2. 使用Python编写简单的端口扫描器的实例分享【转】

    转自 使用Python编写简单的端口扫描器的实例分享_python_脚本之家 http://www.jb51.net/article/76630.htm -*- coding:utf8 -*- #!/ ...

  3. mycat学习笔记

    MyCAT简易入门_数据库技术_Linux公社-Linux系统门户网站http://www.linuxidc.com/Linux/2016-01/127382.htm mycat读写分离配置 - PE ...

  4. springcloud Zuul中路由配置细节

    上篇文章我们介绍了API网关的基本构建方式以及请求过滤,小伙伴们对Zuul的作用应该已经有了一个基本的认识,但是对于路由的配置我们只是做了一个简单的介绍,本文我们就来看看路由配置的其他一些细节. 首先 ...

  5. redis,nodejs,php,pub/sub 实战: 微信语音识别

    2015年5月22日 20:20:20 星期五 效果: 这边对微信说话,  浏览器端及时显示语音识别的文字 注意: 在连接socket.io时, 按下浏览器f12, 如果一直有请求不断的刷, 说明so ...

  6. springmvc接收jquery提交的数组数据

    var selectedUsers = $('#users').tagbox('getValues'); if (selectedUsers.length > 0) { $.post(appPa ...

  7. 转 Spring Boot之No session repository could be auto-configured, check your configuration问题解决

    1.  环境介绍 JDK 1.8  Spring-Boot 1.5.1.RELEASE, STS IDE 2.  问题的提出 创建了一个非常简约的Spring Boot Web Application ...

  8. node.js开发web

    1.安装express框架 使用npm install -g express安装express后,在命令行中执行express,提示没有此命令 原因是在新版的express中命令行需要单独安装 npm ...

  9. PhpStorm,Pycharm,Goland破解

    phpstorm是一个轻量级且便捷的PHP IDE,其旨在提供用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查.不但是php开发的利器,前端开发也是毫不逊色的.下面记录Php ...

  10. Python 驱动 MongoDB 示例(PyMongo)

    Python 的MongoDB驱动 pymongo ,使用pip Install pymongo安装即可 最近发现网上的很多实例已经过时了,在此自我探究记录下来. 编写一个接口类来支持MongoDB的 ...