Parchrome的小站

Be together. Not the same.

0%

Ubuntu 编译安装Nginx

Ubuntu/Debian虽然可以直接使用apt-get下载安装Nginx,但无法添加、自定义一些所需要的模块,如Brotli、OpenSSL。所以自己编译安装Nginx才是最佳的选择。

编译环境搭建

安装依赖库以及编译所需要的工具

1
$ sudo apt install build-essential libpcre3 libpcre3-dev zlib1g-dev unzip git

下载需要的组件

Nginx

选择合适的版本,以nginx-1.15.9为例,下载地址

nginx已更新1.20.2(stable),下载地址

1
2
$ curl -O http://nginx.org/download/nginx-1.15.9.tar.gz
$ tar -xvf nginx-1.15.9.tar.gz # 解压

OpenSSL-1.1.1o(选择)

下载地址

1
2
$ curl -O https://www.openssl.org/source/openssl-1.1.1o.tar.gz
$ tar -xvf openssl-1.1.1i.tar.gz

Brotli(选择)

1
2
3
4
$ git clone https://github.com/google/ngx_brotli.git
$ cd ngx_brotli
$ git submodule update --init
$ cd ..

编译安装Nginx

若原来安装了Nginx可以参考原编译参数,安装新Nginx前务必将老版本Nginx删除干净。

1
2
3
$ nginx -V #查看原编译参数
$ sudo systemctl stop nginx
$ sudo apt remove --purge nginx* #卸载apt安装的Nginx
1
2
3
4
$ cd nginx-1.15.9
$ ./configure --user=www-data --group=www-data --add-module=../ngx_brotli --with-openssl=../openssl-1.1.1g --with-openssl-opt='enable-tls1_3' --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module
$ make
$ sudo make install

Nginx默认的安装目录为/usr/local/nginx/,配置文件为/usr/local/nginx/conf/nginx.conf。

关于Nginx编译配置

查看可用的编译选项

1
$ ./configure --help

–user=USER 指定用户
–group=GROUP 指定用户组
–prefix=PATH 指定安装目录
–conf-path=PATH 指定配置文件地址