《深入剖析Nginx》一1.3 源码目录结构

简介:

本节书摘来异步社区《深入剖析Nginx》一书中的第1章,第1.3节,作者: 高群凯 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.3 源码目录结构

深入剖析Nginx
将Nginx源码包解压后,目录文件如下所示。

[root@localhost nginx-1.2.0]# ls -F
auto/  CHANGES  CHANGES.ru  conf/  configure*  contrib/  html/  LICENSE  man/  README  src/

其中

  • auto/:包含了很多会在执行configure进行编译配置时调用的检测代码。
  • CHANGES:Nginx的版本更新细节记录。英文版。
  • CHANGES.ru:Nginx的版本更新细节记录。俄文版。
  • conf/:Nginx提供的一些默认配置文件。
  • configure*:根据系统环境设定Nginx编译选项的执行脚本。
  • contrib/:网友贡献的一些有用脚本。
  • html/:提供了两个默认html页面,比如index.html的Welcome to nginx!。
  • LICENSE:声明的Nginx源码许可协议。
  • man/:Nginx的Man手册,本文文件,可直接用vi或记事本打开。
  • README:读我文件,内容很简单,通告一下官网地址。
  • src/:Nginx源码,分门别类,比如实现事件的event等,很清晰。

执行configure脚本后将生成Makefile文件和objs目录,这是根据当前系统环境生成的相关编译配置。Nginx并没有使用Autoconf1和Automake2等这样的自动化工具来做这个工作,而都是手动编码实现的。比如当Nginx判断当前Linux系统是否支持epoll时,它采用的方法就是编写一款小应用程序,并在其中调用epoll_create()函数,然后再根据它是否可被正常编译执行来做这个判断。具体可参考文件nginx-1.2.0/auto/os/linux和nginx-1.2.0/auto/feature内相关代码。

相关文章
|
10天前
|
应用服务中间件 Linux 网络安全
CentOS 7.4源码编译nginx1.12 并且隐藏nginx的版本
CentOS 7.4源码编译nginx1.12 并且隐藏nginx的版本
14 0
|
8月前
|
缓存 前端开发 JavaScript
PHP - Laravel 创建项目到服务器(nginx、apache)运行(附带目录结构)
PHP - Laravel 创建项目到服务器(nginx、apache)运行(附带目录结构)
212 0
|
3月前
|
算法 应用服务中间件 nginx
NGINX下的红黑树源码详解(附 流程图和GIF)(1)
之前博主稍微讲解了下红黑树的原理,那么在这篇博客博主想要把红黑树讲的更加的透彻,以便于更多的人了解红黑树 (本博客会更加详细的介绍之前的博客没介绍到的,所以各位看官不同再回去翻看博主之前那篇红黑树的原理讲解了。)
39 3
|
3月前
|
算法 应用服务中间件 nginx
NGINX下的红黑树源码详解(附 流程图和GIF)(2)
那我们就接着之前的gif继续吧 涉及到的 3/4、5情况(精简版) 情况3:变化前[当前结点为4节点]: 当前节点的父节点是红色且祖父节点的另一个子节点(叔叔节点)是红色。
22 2
|
4月前
|
应用服务中间件 Linux 网络安全
源码方式安装nginx及其依赖并设置服务开机启动
源码方式安装nginx及其依赖并设置服务开机启动
114 0
|
8月前
|
缓存 负载均衡 NoSQL
山东布谷科技直播软件源码Nginx服务器横向扩展:搭建更稳定的平台服务
Nginx服务器横向扩展提高了[直播软件源码](https://developer.aliyun.com/article/1302799?spm=a2c6h.13148508.setting.15.65934f0e6yi0Cp)性能,使直播软件源码平台性容错性、负载能力、处理高并发能力等能力有了极大地提升,确保了平台向着更高心梗、更稳定的方向发展,并且这样,使用户的体验大大增加,增加用户黏性,增多了用户的数量。
山东布谷科技直播软件源码Nginx服务器横向扩展:搭建更稳定的平台服务
|
消息中间件 缓存 运维
大型医院云HIS系统源码 基于Angular+Nginx+Java+Spring开发 SaaS应用
本套云HIS系统采用主流成熟技术开发,软件结构简洁、代码规范易阅读,SaaS应用,全浏览器访问前后端分离, 多服务协同,服务可拆分,功能易扩展。多集团统一登录患者主索引建立、主数据管理,统一对外接口管理。 商业级源码,带电子病历,过四级,有演示!云his系统源码 SaaS应用 功能易扩 统一对外接口管理.
175 0
大型医院云HIS系统源码 基于Angular+Nginx+Java+Spring开发  SaaS应用
|
存储 Java 应用服务中间件
线程池设计, 从简单的我们平常设计线程池图解,到生活中的类似线程池的处理现实场景, 到简单的C++模拟nginx写的单链表组织工作队列的简单线程池实现 + nginx 部分源码刨析
线程池设计, 从简单的我们平常设计线程池图解,到生活中的类似线程池的处理现实场景, 到简单的C++模拟nginx写的单链表组织工作队列的简单线程池实现 + nginx 部分源码刨析
线程池设计, 从简单的我们平常设计线程池图解,到生活中的类似线程池的处理现实场景, 到简单的C++模拟nginx写的单链表组织工作队列的简单线程池实现 + nginx 部分源码刨析
|
存储 网络协议 Java
内存池组件以及根据nginx内存池源码设计实现简易内存池
内存池组件以及根据nginx内存池源码设计实现简易内存池
内存池组件以及根据nginx内存池源码设计实现简易内存池
|
应用服务中间件 nginx