目录
- 一、Nginx快速安装
- 1、下载Nginx
- 2、配置Nginx模块
- 二、Ngnix重新编译和安装模块
一、Nginx快速安装
1、下载Nginx
直接进入Nginx官网下载Linux最新稳定版本,我之前下载的版本是1.23.0
。
2、配置Nginx模块
下载完后我把源码压缩文件解压放在/opt/appl/nginx-source
目录下,解压后可以看到如下文件,这里我自己写了个简单的脚本setup.sh
,用来配置常用模块。
setup.sh
脚本内容如下,这里我们共配置了4个模块。
#!/bin/bash
./configure \
--prefix=/opt/appl/nginx \
--with-http_stub_status_module \
--with-http_realip_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_gunzip_module
备注:
prefix
为安装目录,这里我的安装目录为/opt/appl/nginx
。
各模块说明如下:
模块名称 | 模块说明 |
---|---|
http_stub_status_module | 状态模块,支持Nginx状态查询 |
http_realip_module | 允许更改客户端的IP地址到指定请求头 |
http_ssl_module | 开启SSL支持 |
http_gzip_static_module | 开启gzip静态压缩模块 |
http_gunzip_module | 开启gunzip模块,对不支持的gzip的客户端进行内容解压 |
备注:更多Linux模块说明请参考 Nginx模块构建。
执行完setup.sh
配置完Ngnix模块后,再到源码根目录下执行如下命令对应用程序进行编译和安装。
make install
编译完成后,然后我们可以在安装目录/opt/appl/nginx
下看到如下文件。
进入sbin
目录,输入./nginx -V
命令查询是否安装成功。
./nginx -Vnginx version: nginx/1.23.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/opt/appl/nginx --with-http_stub_status_module --with-http_realip_module --with-http_ssl_module --with-http_gzip_static_module --with-http_gunzip_module
当看到如上信息时说明Nginx已经安装成功了,我们可以看到安装的Nginx的版本、安装路径和配置的模块。
二、Ngnix重新编译和安装模块
进入Nginx源码目录/opt/appl/nginx-source
,输入以下命令添加新的模块,
./configure --prefix=/opt/appl/nginx --with-http_geoip_module
再对nginx源码进行重新编译,输入以下命令。
make
备注:千万不要执行
install
,否则会覆盖安装。
编译完后我们可以在/opt/appl/nginx-source/objs
目录下看到可执行的nginx
二进制文件,如下:
然后我们把名为nginx
的可执行文件拷贝到安装目录/opt/appl/nginx/sbin
下,然后对Nginx进行重启即可。
./nginx -s quit
./nginx
输入命令./nginx -V
查看Nginx版本信息,可以看到新的模块是否添加成功。
nginx version: nginx/1.23.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/opt/appl/nginx --with-http_stub_status_module --with-http_realip_module --with-http_ssl_module --with-http_gzip_static_module --with-http_gunzip_module