nginx源码学习资源

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

 

首先要做的当然是下载一份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的模块开发与架构

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/435031.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#打开文件和文件夹

打开文件夹 private void buttonX2_Click(object sender, EventArgs e){//输出文件路径FolderBrowserDialog dialog new FolderBrowserDialog();//提示用户打开文件窗体dialog.Description "请选择文件路径";if (dialog.ShowDialog() DialogResult.OK){textBoxsav…

通过JavaScript操作HTML中select标签

添加: Js代码1.function selectChange() 2.{ 3. var seldocument.getElementById("select1"); 4. Option option new Option("Text","Value"); 5. sel.add(option); 6.} function selectChange(){ var seldocument.get…

标签机二次开发

1. BPLA_OpenComEx("com1",38400,1,1000) 打开串口 2. BPLA_Set(2,0,1) 设置打印机基本参数,如果设置出纸方式为“撕离”,那么需要第3.1步,如果设置出纸方式为“回卷”,需要第3.2步 如果打印机有碳带,需要设…

动漫的python语言代码大全_下载动漫壁纸-Python代码

本帖最后由 我心她有丶 于 2020-4-16 19:28 编辑前段时间在论坛找到一个下载动漫壁纸的软件,还挺好用的,这几天突然用一下,下载不出图片,下载的一片白,然后分析了下他的软件,得到了一个地址: ht…

安装包卸载时如何删除安装时写在系统环境变量中的内容

在用InstallShield制作安装包时,有时我们会在脚本中通过操作注册表,配置系统环境变量,比如在Path中追加,但卸载时如何清除追加的路径变量,一直有些模糊。 今天受网友启发,在InstallShield的帮助文档中找到了…

AE点击按钮添加栅格

private void buttonX3_Click(object sender, EventArgs e){OpenFileDialog pOpenFileDialog = new OpenFileDialog();pOpenFileDialog.CheckFileExists = true;pOpenFileDialog.Title = "添加栅格文件";pOpenFileDialog.Filter = "栅格数据(*.tiff;*.tif;*.jpe…

深入浅出VC++串口编程之基于Win32 API

1、API描述在WIN32 API中,串口使用文件方式进行访问,其操作的API基本上与文件操作的API一致。打开串口Win32 中用于打开串口的API 函数为CreateFile,其原型为:HANDLE CreateFile (  LPCTSTR lpFileName, //将要打开的串口逻辑名&…

关于Visual C#装箱与拆箱的研究

在对这个问题展开讨论之前,我们不妨先来问这么几个问题,以系统的了解我们今天要探究的主题。  观者也许曾无数次的使用过诸如System.Console类或.NET类库中那些品种繁多的类。那么,我想问的是它们究竟源自何处?C#又是如何联系它…

python的river安装

pip install river -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

python excel token_python+excel接口自动化获取token并作为请求参数进行传参操作

1、登录接口登录后返回对应token封装:import jsonimport requestsfrom util.operation_json import OperationJsonfrom base.runmethod import RunMethodclass OperationHeader:def __init__(self, response):self.response json.loads(response)def get_response_…

直连串口线、交叉串口线

问题1:何时用交叉,何时用直连? 标准串口引脚2是RX,引脚3是TX,(即九针串口的2号引脚连接的是主控芯片的RXD引脚,3号引脚连接的是主控芯片的TXD引脚),如果单片机开发板的串口和电脑串口都是标准串口&#xff…

把东西从学校搬回来了

很早就计划把东西从学校搬回来了,确切的说是在去年就开始计划。由于发扬了我的懒惰的精神,过去的一年都没行动,但是今天不得不回学校搬了。而且今天无论是从黄历还是天气都不是一个搬家的好日子。 上午就被外面的下雨声吵醒了,睡完…

利用arcgis将execl数据可视化(点)

execl数据示例数据 execl文件必须是(.xls) 将经纬度(度分秒)转成以度为单位 利用以下公式,注意将A2换成经纬度所在的单元格 (LEFT(A2,FIND("",A2)-1))MID(A2,FIND("",A2)1,FIND("′"…

python与网页设计的区别_Python与设计模式(三):行为型模式(上)

接前文:kant li:Python与设计模式(二):结构型模式(下)​zhuanlan.zhihu.com行为型模式主要处理对象间的通信问题,包括责任链模式、命令模式、解释器模式、迭代器模式、观察者模式、状态模式、策略模式、模板模式等。1. 责任链模式…

IP保留地址

IP地址是IP网络中数据传输的依据,它标识了IP网络中的一个连接,一台主机可以有多个IP地址。IP分组中的IP地址在网络传输中是保持不变的。   1.基本地址格式   现在的IP网络使用32位地址,以点分十进制表示,如172.16.0.0。地址格式…

影像拼接(3种方法)

1、镶嵌 2、镶嵌至新栅格 3、envi无缝拼接(相对arcgis时间上更长)

读取Excel文件数据

1.用APP直接读取Excel文件 这种方法原理是用APP打开EXCEL文件,操作单元格读取数据,快速比较慢,基本不采用这种方式。 2.用APP把Excel文件转成Txt文件,再读取Txt文件 过程: a. Microsoft.Office.Interop.Excel.Worksheet SAVE 方法…

python监听多个udp端口_Python的Socket编程过程中实现UDP端口复用的实例分享

关于端口复用一个套接字不能同时绑定多个端口,如果客户端想绑定端口号,一定要调用发送信息函数之前绑定( bind )端口,因为在发送信息函数( sendto, 或 write ),系统会自动给当前网络程序分配一个随机端口号,这相当于随…

Android系统的开机画面显示过程分析

提到Android系统的UI,我们最先接触到的便是系统在启动过程中所出现的画面了。Android系统在启动的过程中,最多可以出现三个画面,每一个画面都用来描述一个不同的启动阶段。本文将详细分析这三个开机画面的显示过程,以便可以开启我…

arcgis报错常用解决方法

1.输出路径不要改动,选择arcgis默认的数据库,运行完后再将数据导出一份 2.输出文件名以字母开头(个人尝试有时候数字开头会报错) 3.确保自己路径中没有中文 4.再次运行工具箱,第一次运行的时候可能程序调用会出错 …