准备工作

  1. Nginx 源码,解压 tar.gz,目录:$WORKER/nginx
  2. pcre 源码,解压 tar.gz,目录:$WORKER/pcre

该库是location指令和ngx_http_rewrite_module模块中正则表达式支持所必需的

  1. zlib 源码,解压 tar.gz,目录:$WORKER/zlib

该库是ngx_http_gzip_module模块所必需的

  1. libressl 源码,解压 tar.gz,目录:$WORKER/libressl

该库用于替代openssl库,它比openssl有更好的 QUIC 支持

开始编译

  1. 进入 nginx 目录cd ./nginx
  2. 配置:
./configure \
    --with-compat  \
    --with-file-aio  \
    --with-http_ssl_module  \
    --with-http_realip_module  \
    --with-http_v2_module  \
    --with-http_v3_module  \
    --with-stream  \
    --with-stream_realip_module  \
    --with-stream_ssl_module  \
    --with-stream_ssl_preread_module  \
    --with-threads  \
    --with-pcre=../pcre  \
    --with-pcre-jit  \
    --with-zlib=../zlib  \
    --with-openssl=../libressl \
    --with-cc-opt="-O2" \
    --with-ld-opt="-s -static"
  1. make,编译结果会存于$WORKER/nginx/objs
  2. 安装(不必须):sudo make install