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

Nginx常用编译模块

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

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


分享给朋友:

相关文章

Docker基础

Docker基础

零、Docker软件1、docker本质上是C/S架构的,其软件版本分docker-ce(社区版)、docker-ee(企业版)2、docker镜像是分层构建,docker registry中,含有若干个repository(镜像的仓库),每个repository含有若干镜像,每个镜像用tag(标签)区分,意味着每个tag代表一个镜像。不指定tag的话,默认tag是latest3、docker的主配置文件是/etc/docker/deamon.json。配置docker镜像加速下载,示例文件:{...

Centos7学习笔记(四)——grep、sed、awk

Centos7学习笔记(四)——grep、sed、awk

1、grep——print lines matching a pattern打印匹配内容的行(多行)命令格式:grep [参数] 过滤匹配内容 [文件名]或者grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]常用参数:-v 取反过滤 ◆◆-i 忽略大小写  ◆◆(find 命令可以用-iname)-n 对过滤后的内容,显示源文件行号  ◆◆-w 按单词为单位过滤。◆◆-o只输出匹配的内容。◆◆-E使用扩展规则-r...

CentOS8系统优化脚本

CentOS8系统优化脚本

网上看到的一个CentOS8的系统优化脚本,写的挺好的。抄录一下。https://www.cnblogs.com/zxl1024320609/p/16715018.html color () {         RES_COL=60         MOVE_TO_COL="echo -en&n...

Centos7学习笔记(十七)- HTTP协议

Centos7学习笔记(十七)- HTTP协议

一、什么是HTTP?首先要提超文本HyperText——含有超链接和各种多媒体元素标记的文本。这些超文本文件彼此链接,形成网状,又被称为网页web page。这些链接用URL表示。最常见的超文本格式是超文本标记语言HTML。URL——统一资源定位符Uniform resource locator,用于唯一标识万维网中的某一个文档。URL由“协议”、“主机和端口”、“文件路径和文件名”组成。(其实还可能包括:参数(可能是用&&符号分隔)、查询(可能用?去分隔定义、片段(用#去分隔,...

Centos7学习笔记(八)-基础命令(三)

Centos7学习笔记(八)-基础命令(三)

1、rsync作为一个同步(备份,增量备份)命令,它的选项非常的多,常用的组合是avz,当然,如果需要建立备份服务,那么-n必然是用的多的参数选项。关于rsync的用法详细说明,参考网上的这篇原文链接:https://www.cnblogs.com/f-ck-need-u/p/7220009.html#blog21,文章写的非常好,有大量的通俗易懂的例子及解释。以下关于rsync参数选项的说明,就抄录自该文章。v:显示rsync过程中详细信息。可以使用"-vvvv"获取更详细...

 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...

发表评论

访客

看不清,换一张

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