当前位置:首页 > 技术文章 > 正文内容

Nginx常用编译模块

ivker_lee3年前 (2023-03-18)技术文章1133

    因为某些特殊需求,最近在折腾网站支持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设置其他构建选项。


分享给朋友:

相关文章

Centos7学习笔记(三)——重定向、通配符、正则

Centos7学习笔记(三)——重定向、通配符、正则

1、STDIN、STDOUT、STDERR输入重定向和输出重定向的符号和作用,分别在下面2个表中。注意:当输出结果是error时,是不能将结果重定向到“标准输出”中,反之,输出结果是“标准输出”,也不能重定向至错误输出中。如下图实例:[study@nfs01 ~]$sudo echo "00 1 * * * /usr/bin/rsync  -avz -r /etc/r...

Centos7学习笔记(六)——shell编程初步

Centos7学习笔记(六)——shell编程初步

1、shell编程的一些基础a)shell编程有两类变量,                             全局变量(环境变量)——  一般指系统内置的变量,或者手动用export、declare等方式宣称,写入/etc/profile(~./bash_profile、~/bashrc、/etc/bashrc)的全局变量 ...

 Centos7学习笔记(十一)- nfs服务器搭建

Centos7学习笔记(十一)- nfs服务器搭建

nfs服务本质上是通过rpc调用提供服务的,所以,其依赖rpcbind程序相关组件运行。而且,rpc服务必须先启动,nfs服务才能正常使用。以下是安装配置:1、服务端a)安装软件yum -y install nfs-utils rpcbind                                    &nb...

 Centos7学习笔记(十四)- SSH部分

Centos7学习笔记(十四)- SSH部分

1、数字签名了解ssh之前,先了解什么是数字签名?http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.htmlhttp://www.youdzone.com/signature.html参看这2篇文章,通俗易懂的解释了什么是数字签名。简单的讲,就是有一个CA中心,它可以颁发“数字证书”,这个证书,可以证明其后的公钥真伪性,以便客户端正确识别。2、SSH基本原理与运用(一)以下部分,抄录于“阮一峰”博客,链接:htt...

 Centos7学习笔记(十六)- 正则表达式高级部分

Centos7学习笔记(十六)- 正则表达式高级部分

1、正则表达式工作流程取得正则字符串并检查正则语法。编译:将正则字符串编译成真正的正则表达式。启动正则引擎开始匹配正则引擎:逐个字符扫描字符串并与编译后的正则表达式的各个元素进行匹配。何为正则元素呢?纯字符组合,比如“abc123”,那么每一个字符都是一个正则元素[a-z]这样的样式,那么视中括号[]为一个整体作为正则元素,中括号内的内容是限定的匹配范围字符匹配的反斜线序列也是一种正则元素字符.是一个独立的正则元素,它除了不能匹配\n,其他任意字符都能匹配所有的*、?、{m}、{m,}、{m,n...

Linux学习——Shell

Linux学习——Shell

1、bash解释器csh\ksh\bash都是shell的解释器。2、关于bash的启动和配置环境按上图的理解,正常我们需要把脚本放在开机启动,需要写入的是/etc/bashrc文件或者~/.bashrc文件。另外,关于su  username和su - username的区别(bash的交互式非登录和交互式登录式)。可以参考下图...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。