Nginx常用编译模块
因为某些特殊需求,最近在折腾网站支持TLS1.3。因此做一些笔记。
首先,要支持TLS1.3,需要openssl在1.1.0以上版本。需要系统重新编译安装。其次,需要nginx调用新版本openssl,用“nginx -V”命令可以查看调用的openssl版本详情。然后下载对应版本的nginx源码,重新编译nginx。
以下罗列nginx编译常用编译模块:
–prefix=path nginx安装目录 –sbin-path=path nginx命令目录 –modules-path=path nginx动态模块存储目录 –modules-path=path nginx配置文件的路径,也可同时修改对应文件名不为nginx.conf –error-log-path=path 错误日志目录 –pid-path=path nginx.pid主存储进程的路径 –lock-path=path nginx.lock的路径 –group=name 启用nginx进程的用户名组 –with-select_module 和 --without-select_module是否支持构建select方法 –with-poll_module 和 --without-poll_module是否支持poll方法 –with-threads 启用线程池使用 –with-http_ssl_module HTTPS协议支持 –with-http_v2_module 提供http/2支持 –with-http_realip_module 模块将客户端地址更改为在指定的标头字段中发送的地址。获取真实IP地址时用 –with-http_geoip_module 和 --with-http_geoip_module=dynamic 支持geoip地址库定位 –with-http_sub_module 模块通过将指定的一个字符串修改为另一个指定的字符串来修改响应。 –with-http_stub_status_module 模块提供对基本状态信息的访问。 –with-http_perl_module 和 --with-http_perl_module=dynamic 支持构建迁入式perl模块。构建新perl版本支持时使用 –with-perl_modules_path=path 指定perl模块库的路径 –with-perl=path 指定嵌入式perl模块构建的目录,该目录需有perl版本源码 –http-log-path=path 启用后,可用access_log指令修改log文件名 –with-stream 和 --with-stream=dynamic 支持UDP/TCP代理和负载均衡的流模块 –with-stream_ssl_module 让stream流模块支持ssl协议 –with-stream_realip_module 该模块将客户端地址更改为PROXY协议标头中发送的地址 –with-stream_geoip_module 和 --with-stream_geoip_module=dynamic 模块根据客户端IP地址和预编译的MaxMind数据库创建变量 –with-stream_ssl_preread_module 该模块运行从Client Hello消息中提取信息,而无需终止SSL/TLS。 –with-pcre和–with-pcre=path 强制启用PCRE库和设置PCRE库源的路径 –with-zlib=path 设置zlib库源的路径。 –with-openssl=path 设置openssl库源(openssl编译代码)路径 –with-openssl-opt=parameters 为openssl设置其他构建选项。

