ngx_module.h中引用了两个至关重要的外部变量

1
2
extern ngx_module_t  *ngx_modules[];
extern char          *ngx_module_names[];

ngx_modulesngx_module_names定义在ngx_modules.c中,这个文件并不存在于nginx源码中,在编译时执行configure动态生成。ngx_modules数组包含所有的Nginx模块,Nginx启动时会调用ngx_cycle_modules函数,原型如下:

1
ngx_int_t ngx_cycle_modules(ngx_cycle_t *cycle)

此函数的目的是将ngx_modules中的数据复制到cycle中,函数调用顺序如下:

main->ngx_init_cycle->ngx_cycle_modules

nginx ngx_modules相关推荐

  1. 实现第一个自定义nginx模块

    实现第一个自定义nginx模块 下面的过程详细记录了如何实现第一个自定义的nginx模块,对nginx入门者包括我很有参考价值,特记录如下. 前提 假定以root身份已经在CentOS 6.8 x86 ...

  2. nginx 开发一个简单的 HTTP 模块

    2019独角兽企业重金招聘Python工程师标准>>> 1. 下载 Nginx http://nginx.org/ 2. 目录结构 $ tree -L 2 . ├── mytest_ ...

  3. Nginx源码研究三:Epoll在NGINX中的使用

    Web服务器在面对高并发的情况下,网络的IO一般选择IO复用,像apache选择的Select/poll.Nginx在linux 2.6后选择Epoll做网路IO,提高了WEB服务的并发能力. 在本章 ...

  4. Nginx源码分析:3张图看懂启动及进程工作原理

    图一:nginx 启动及内存申请过程分析 任何程序都离不开启动和配置解析.ngx 的代码离不开 ngx_cycle_s 和 ngx_pool_s 这两个核心数据结构,所以我们在启动之前先来分析下. 内 ...

  5. nginx进程管理之worker进程

    主要分析一下worker进程的情况.首先找到worker进程的入口-ngx_worker_process_cycle.这个函数不仅是worker进程的入口函数,而且是worker进程 循环工作的主要函 ...

  6. nginx启动初始化过程(二)

    前面提到nginx启动过程中,关键部分是ngx_init_cycle.ngx_init_cycle()函数究竟做了哪些工作.ngx_cycle_t结构定义在src/core/ngx_core.h文件中 ...

  7. nginx的启动初始化过程(一)

    nginx的启动初始化在src/core/nginx.c的main函数中完成,也是整个nginx的入口.nginx的初始化主要围绕一个类型为ngx_cycle_t的全局变量ngx_cycle展开. m ...

  8. 一张脑图说清 Nginx 的主流程

    一张脑图说清 Nginx 的主流程 这个脑图在 nginx-1.14.0-research 上.这是我在研究nginx的http模块的时候画的.基本上把 Nginx 主流程(特别是 HTTP 的部分) ...

  9. Nginx —— configure文件详解

    我们晓得configure命令支持非常多的参数,读者可能会好奇它在执行时到底做了那些事情,接下来通过解析configure源码来对它有一个感性的认识. configure由shell脚本编写,中间会调 ...

最新文章

  1. 奇思妙想——我心中的智能自行车
  2. think php自增,thinkphp5分表自增ID解决方案
  3. 解决xp登陆域很慢的方法
  4. VS2005为什么会自动关闭?使用Visual Assist X的要注意了
  5. c++ python opencv_从C++到Python的OpenCV垫
  6. python可视化案例书籍推荐_我用python5年后,我发现学python编程必看的三本书!...
  7. 校招大学生简历制作模板(ps:程序员简历)
  8. java中根据秒生成cron表达式_在线Cron表达式生成器
  9. [Android] 【极其罕见】【安卓】视频转换器【支持18种格式转换!】
  10. input 正则验证非负数小数点后两位
  11. 仿酷狗音乐列表点击item子控件展开功能
  12. Ubuntu16.04安装gazebo8并加载模型库
  13. 【官方文档】Fluent Bit 数据管道之输入插件(Tail)
  14. 基础拓扑学笔记(3)——连续映像
  15. 快解析教你,快速注册个人域名
  16. 游戏开发入门——Lua(1)
  17. 计算机网络传输层之SR协议
  18. 高可用的“异地多活”架构设计
  19. 连接字符串的几种方式
  20. 早睡、运动、读书,是性价比最高的自律

热门文章

  1. linux中redis的主从
  2. linux系统判断是否重启、关机、查询登录诊断分析简介
  3. json_encode 处理中文乱码
  4. 北漂心中的梦:惬意的生活
  5. SPOJ - DQUERY D-query(莫队/线段树+离线/主席树)
  6. 天津天气预报软件测试,可以查询节气的天气预报app
  7. python图形用户界面pyside_PySide——Python图形化界面入门教程(一)
  8. iphone双卡_放心了:IT之家实测,苹果iPhone 12支持双卡5G
  9. Docker教程-文件传输
  10. 安卓进阶系列-03上弹选择框(PopupDialog)的使用