Centos 7编译安装Nginx

117 阅读1分钟

通过yum安装Nginx已经会了,现在看看用编译的方式怎么安装Nginx。

为什么要通过编译的形式安装Nginx

从源代码编译Nginx比用yum安装的形式更灵活:比如我们需要添加特定的模块(来自NGINX或第三方),或者是更新安全补丁的情况。这时采用源码编译的方式才适合我们。

安装编译环境

通过命令安装编译所需的编译器

yum install perl gcc-c++ make -y

安装基础依赖

运行Nginx的最低依赖,需要以下几个包:

1、PCRE支持正则表达式。NGINX核心和重写模块需要。

wget github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-10.42.tar.gz
tar -zxf pcre2-10.42.tar.gz
cd pcre2-10.42
./configure
make
sudo make install

2、zlib支持头文件压缩。NGINX Gzip模块需要。

wget http://zlib.net/zlib-1.3.1.tar.gz
tar -zxf zlib-1.3.1.tar.gz
cd zlib-1.3.1
./configure
make
sudo make install

3、OpenSSL支持HTTPS协议。NGINX SSL模块和其他模块需要。

wget http://www.openssl.org/source/openssl-1.1.1v.tar.gz
tar -zxf openssl-1.1.1v.tar.gz
cd openssl-1.1.1v
./Configure linux-x86_64 --prefix=/usr
make
sudo make install

接下来编译Nginx

下载并解压缩最新稳定版本的源文件:

wget https://nginx.org/download/nginx-1.26.1.tar.gz
tar zxf nginx-1.26.1.tar.gz
cd nginx-1.26.1

配置选项是用./configure脚本指定的,该脚本设置了各种NGINX参数,包括通往源和配置文件的路径,编译器选项,连接处理方法和模块列表。脚本通过创建编译代码并安装NGINX开源所需的makefile来完成。

./configure\
 --prefix=/usr/local/nginx\
 --with-pcre=../pcre2-10.42\
 --with-zlib=../zlib-1.3.1\
 --with-http_ssl_module\
 --with-stream\
 --with-mail=dynamic

执行完之后nginx后续会安装到/usr/local/nginx目录下。

最后执行以下命令,如果没有报错,那么nginx就已经成功安装完毕了:

make && make install