编译出适合自己的 Nginx


分类: 编程
评论: 0

编译出适合自己的 Nginx



分类: 编程
评论: 0

下载 nginx

使用 wget下载 nginx

wget --nd --dirrctory-prefix=/home/learn http://nginx.org/download/nginx-1.14.1.tar.gz

然后解压后得到这样的目录结构

目录结构

编译及安装

在解压包之后,就可以手动编译工作了,接下来先看看 configure 支持哪些参数

#在 nginx 目录下执行
sudo ./configure --help | more

通过上面的命令可以看到它支持很多参数,其中可以归纳为几大类的配置编译参数

安装依赖库

在编译过程可能会以到缺少库,其中有些库要是缺少是不能正常编译(除非移除),所以需要安装相应缺少的库,一般 linux 平台会缺少:pcre,openssl,gzip

所以需要安装这些类库,以 Ubuntu 为例

sudo apt-get install libpcre3 libpcre3-dev zlib1g-dev openssl libssl-dev

之后重新执行编译操作,编译之后会在 ngixn-./ 创建 objs目录,其中包含了编译后的所有中间文件,这里面有个模块文件,在这个文件中以数组方式列出需要安装的所有模块

安装 Nginx

在上面已经成功编译了,并且安装好相应的依赖库,那么接下来就是安装了,首次安装执行

sudo make install

其中略过大量安装信息,然后安装成功了,之前我们编译的时候由指定 --prefix 前缀,这个就是我们安装 nginx 目录

安装目录结构

切换到 nginx 安装目录,这里面的目录结构稍微解释下:

以上就是编译过程,主要的是编译时模块的选择,还有就是需要知道 nginx 的二进制文件存放在什么位置,方便做版本升级等一些操作