买了极客时间上陶辉的Nginx核心知识100讲,正在学。链接
Nginx 4个组成部分
nginx 版本
开源版本:nginx.org
商业版:nginx.com
OpenResty:Nginx + 内置Lua库 + 第三方模块+大多数依赖项
编译自己的nginx,因为模块要求不一样。
下载nginx
nginx/download
介绍各个目录
auto 主要3个子目录。cc用于编译。lib包含的库。os判断操作系统相关。其他辅助config脚本执行的时候判断nginx支持哪些模块,有哪些能用。
changes变更记录。.ru俄文版的changes。
conf,配置文件示例,到时候可以copy到安装目录去。
configure文件用于生成中间文件,执行编译前的必备动作。
contrib。把里面的vim文件夹内容copy到~/.vim目录下面,能让编辑conf文件有缩进,字体等格式。
man文件是帮助文件,估计就是manual的意思。里面有个nginx.8 文件,是一个manual文件,用man nginx.8打开。
src源代码。
Configure(linux惯例)
./Configure --help | more .参数分3类。
pure-devel
和zlib-devel
,通过yum安装一下即可中间文件介绍
configure完成后在objs生成文件。重点是nix_modules.c文件,里面有ngx_modules数组,包含所有的模块。还有nginx二进制文件。
编译
make编译。在objs中生成。
安装
make install 。install到上面configure的目录中。
原文:https://www.cnblogs.com/sheldon-lou/p/12355164.html