一、为什么不直接使用现有nginx二进制文件直接安装
因为现有的nginx二进制文件是编译好的,内置的一些功能模块已经固定,不能添加或移除。如果自己编译生成nginx,则可按需添加或移除nginx中功能模块。
二、开始编译生成nginx二进制文件
1. 下载Nginx,在官网http://nginx.org/右侧点击download进入下载页面,然后选择合适的版本进行下载
yum -y install wget wget http://nginx.org/download/nginx-1.14.2.tar.gz tar -zxvf nginx-1.14.2.tar.gz
2. 编译前安装一些必备环境
yum -y install gcc gcc-c++ autoconf automake make pcre-devel openssl openssl-devel
3. 编译nginx前,执行configure命令配置nginx环境目录,在nginx目录下可以执行命令 ./configure --help 查看configure帮助信息。主要信息如下
- --prefix=PATH表示安装目录
- --modules-path=PATH设置动态安装模块路径,如果没有使用该参数,则默认使用prefix参数目录
- --with开头的命令说明模块在nginx默认不开启,此命令是要添加对应模块
- --without开头的命令说明模块在nginx默认开启,此命令是要移除对应模块
- --with-debug开启Debug模式编译
进入nginx目录执行命令,如果prefix指定目录不存在则在安装时会自动创建
./configure --prefix=/root/nginx
4. 通过make命令编译nginx,注意后面如果仅仅对nginx版本升级,不需要执行下面的make install命令,而是直接将原nginx替换sbin目录下nginx二进制文件
make
5. 安装nginx,然后就会看到prefix指定目录下生成nginx相关文件
make install