Nginx
准备环境与依赖库§
在编译之前先要明白自己的需求, 比如我现在需要 https / http2 和挂多个 HTTPS 域名, 那在编译 Nginx 之前首先就要安装构建工具和 Nginx 依赖的库
sudo apt update
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev curl -y
libssl-dev 是确保 TLS SNI support enabled 的关键,因为它提供了编译所需的 OpenSSL 开发头文件。下载 Nginx 源码§
我选定的版本是 1.26.3, 前往自己喜欢的目录去拉取对应版本的源码包。比如我这里去 /usr/local/nginx 这个目录
配置编译参数§
接下来将所有的安装路径都指向刚才的目标目录, 并且当前用户拥有目录的所有权。
./configure --prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-cc-opt="-I/usr/include" \
--with-ld-opt="-L/usr/lib"
编译/安装/验证§
-
首先编译和安装
-
进入安装目录并检查
nginx version: nginx/1.26.3
built by gcc 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04.3)
built with OpenSSL 3.0.2 15 Mar 2022
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-cc-opt=-I/usr/include --with-ld-opt=-L/usr/lib