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

1.3 源码目录结构

将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内相关代码。

时间: 2024-09-16 05:55:59

《深入剖析Nginx》——1.3 源码目录结构的相关文章

《深入剖析Nginx》一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的

【lLinux驱动】linux内核源码目录结构

linux内核源码目录结构 代码目录结构  在阅读源码之前,还应知道Linux内核源码的整体分布情况.现代的操作系统一般由进程管理.内存管理.文件系统.驱动程序和网络等组成.Linux内核源码的各个目录大致与此相对应,其组成如下(假设相对于Linux-2.4.23目录):  arch目录包括了所有和体系结构相关的核心代码.它下面的每一个子目录都代表一种Linux支持的体系结构,例如i386就是Intel CPU及与之相兼容体系结构的子目录.PC机一般都基于此目录.  include目录包括编译核

深入理解PHP之源码目录结构与功能说明_php技巧

本文讲述了PHP源码目录结构与功能说明.分享给大家供大家参考,具体如下: PHP之所以能在web开发语言中排名靠前,不仅仅是因为语法简单,上手容易.我个人认为更多是因为其语言本身的:模块的易扩展性,可维护性以及内存安全管理等特点.写过PHP的程序员不一定都知道:PHP是如何执行的?其组织结构目录的作用?如果对其有所了解,对PHP的认识会更深入,写出的代码也会更高效,更健壮...... 1. build 和编译有关的目录. 2. ext 扩展库代码,例如 MySQL.zlib.iconv 等我们熟

《GDAL源码剖析与开发指南》一一1.5 GDAL源码目录

1.5 GDAL源码目录 GDAL源码剖析与开发指南 下载的GDAL源代码压缩包目录如图1-2所示,使用SVN迁出的GDAL源代码目录如图1-3所示. 从图1-2和图1-3所示可以看出,不管用什么方式获取GDAL的源代码,它的目录结构都是一样的.下面我们就针对目录结构中的每个文件夹和文件作一个简单的说明(按照字母顺序). 1.5.1 文件夹说明 对于图1-3中所示的文件夹,详细说明如下. alg:该文件夹存放的是GDAL库中提供的一些算法的源代码,这些算法包括但不限于:DEM生成等高线算法,图像

mysql dba系统学习(2)了解mysql的源码目录及源文件

了解mysql的源码目录 包括客户端代码,服务端代码,测试工具和其他库文件 Mysql源码结构 Bdb 伯克利DB表引擎 BUILD 构建工程的脚本 Client 客户端 Cmd-line-utils 命令行工具 Config 构建工程所需的一些文件 Dbug Fred Fish的调试库 Docs 文档文件夹 Extra 一些相对独立的次要的工具 Heap HEAP表引擎 Include 头文件 Innobase INNODB表引擎 Libmysql 动态库 Libmysql_r 为了构建线程安

QEMU1.3.0的源码分析一 : 源码目录简介

最近在研究QEMU,读了一些QEMU的源码,因为涉及的东西比较多,找到的资料又都比较破碎,不太完整.所以将最近的成果总结一下. 相比其他的开源软件来说,QEMU源码下面目录比较多,下面就先把这些目录的内容大致整理一下. docs/ 包含了一些文档,说实话,对初学者来说,读这些文档压根没有头绪 hw/   包含了所有支持的硬件设备 include/  包含了一些头文件 linux-user/  包含了linux下的用户模式的代码 target-XXX/   包含了QEMU目前所支持guset端的处

nginx线程池源码分析_nginx

周末看了nginx线程池部分的代码,顺手照抄了一遍,写成了自己的版本.实现上某些地方还是有差异的,不过基本结构全部摘抄. 在这里分享一下.如果你看懂了我的版本,也就证明你看懂了nginx的线程池. 本文只列出了关键数据结构和API,重在理解nginx线程池设计思路.完整代码在最后的链接里. 1.任务节点 typedef void (*CB_FUN)(void *); //任务结构体 typedef struct task { void *argv; //任务函数的参数(任务执行结束前,要保证参数

ReSIProcate源码目录下功能说明

1.basicCall,basicMessage,basicRegister,resip_test测试用的   2.db_static Sleepy Cat开发的Berkeley DB   3.dum为Dialog Usage Manager的缩写,包含UAC和UAS,具体是处理各种内部消息以及检验SipMessage的格式(解密)   4.repro Proxy,协调了sip,SDP,rtp,并Process Sip Message   5.resiprocate 主要部分Sip Stack,

【物联网】OpenWrt OpenWRT的源码下载及目录结构

OpenWRT的源码下载及目录结构 OpenWrt的源代码管理默认用的是SVN下载: svn co svn://svn.openwrt.org/openwrt/trunk/ .还可以用Git下载:git clone git://git.openwrt.org/openwrt.git git clone git://git.openwrt.org/packages.git OpenWRT的feeds包括: packages – 提供众多库, 工具等基本功能. 也是其他feed所依赖的软件源, 因此