Nginx ./configure 参数详解

文章
林里克斯

Nginx编译文件详解

实验平台:CentOS 7.4
Nginx版本:nginx/1.12.1


在"./configure"配置中,"--with"表示启用模块,也就是说这些模块在编译时不会自动构建"--without"表示禁用模块,也就是说这些模块在编译时会自动构建,若你想Nginx轻量级运行,可以去除一些不必要的模块。

$ ./configure --help

  --help                             #打印帮助信息

  --prefix=PATH                      #指定安装目录
  --sbin-path=PATH                   #指定bin二进制文件存放目录
  --modules-path=PATH                #指定模块modules文件存放目录
  --conf-path=PATH                   #指定配置文件存放目录
  --error-log-path=PATH              #指定错误,警告和诊断日志文件存放目录
  --pid-path=PATH                    #指定进程号pid存放目录
  --lock-path=PATH                   #指定lock存放目录

  --user=USER                        #指定工作进程使用的非特权用户
                                     worker processes
  --group=GROUP                      #指定工作进程使用的非特权用户组
                                     worker processes

  --build=NAME                       #设置设置可选的程序集名称nginx
  --builddir=DIR                     #设置设置可选的程序集名称nginx的目录

  --with-select_module               #启用构建用于服务器操作的模块select()
  --without-select_module            #禁用构建用于服务器操作的模块select()
  --with-poll_module                 #启用构建用于服务器操作的模块pull()
  --without-poll_module              #禁用构建用于服务器操作的模块pull()

  --with-threads                     #指定能使用的线程池

  --with-file-aio                    #指定能够使用的异步文件I/O

  --with-http_ssl_module             #启用添加HTTPS协议支持到HTTP服务器的模块
  --with-http_v2_module              #启用通过HTTP / 2协议进行HTTP服务器操作的模块组装
  --with-http_realip_module          #允许将客户端的地址更改为在指定的头字段中传递的地址
  --with-http_addition_module        #允许您在响应之前和之后添加文本
  --with-http_xslt_module            #允许您使用XSLT模板转换XML响应,对于此模块的组装和操作,需要 libxml2和 libxslt库
  --with-http_xslt_module=dynamic    enable dynamic ngx_http_xslt_module
  --with-http_image_filter_module    #允许您转换JPEG,GIF,PNG和WebP格式的图像
  --with-http_image_filter_module=dynamic
                                     enable dynamic ngx_http_image_filter_module
  --with-http_geoip_module           #使用现成的MaxMind数据库创建其值取决于客户端IP地址的 变量
  --with-http_geoip_module=dynamic   enable dynamic ngx_http_geoip_module
  --with-http_sub_module             #允许您在响应中将一个指定的字符串更改为另一个
  --with-http_dav_module             #用于使用WebDAV协议在服务器上自动执行文件管理任务
  --with-http_flv_module             #为Flash Video(FLV)文件提供服务器端伪流支持
  --with-http_mp4_module             #为MP4文件提供服务器端伪流支持
  --with-http_gunzip_module          #允许对Content-Encoding: gzip不支持gzip压缩方法的客户端使用“ ” 解包响应
  --with-http_gzip_static_module     #允许您提供具有相同名称和扩展名“ .gz” 而不是常规文件的预压缩文件
  --with-http_auth_request_module    #根据子查询的结果提供客户端授权
  --with-http_random_index_module    #为以斜杠(' /')结尾的查询提供服务,并将随机文件作为目录的索引文件发出
  --with-http_secure_link_module     #允许您验证所请求链接的真实性,保护资源免受未经授权的访问,以及限制链接的持续时间
  --with-http_degradation_module     enable ngx_http_degradation_module
  --with-http_slice_module           #允许您将请求拆分为子查询,每个子查询返回一个特定的响应范围
  --with-http_stub_status_module     #提供对基本服务器状态信息的访问

  --without-http_charset_module      #禁用,该模块允许您将指定的编码添加到响应头的“Content-Type”字段,并将数据从一种编码重新编码到另一种编码
  --without-http_gzip_module         #禁止组装HTTP服务器响应压缩模块 。对于此模块的组装和操作,需要zlib库
  --without-http_ssi_module          #禁止组装ngx_http_ssi_module模块,该模块在通过它的响应中处理服务器端包含(SSI)命令
  --without-http_userid_module       #禁止组装ngx_http_userid_module模块 ,发出cookie以识别客户端
  --without-http_access_module       #禁止构建ngx_http_access_module模块,该模块允许您限制对某些客户端地址的访问
  --without-http_auth_basic_module   #禁止组装ngx_http_auth_basic_module模块,该模块允许您使用“HTTP基本身份验证”协议检查用户名和密码来限制对资源的访问
  --without-http_mirror_module       #禁止,该模块允许您通过创建后台镜像子查询来镜像原始请求
  --without-http_autoindex_module    #禁止组装ngx_http_autoindex_module模块 ,以斜杠(' /')结尾的请求,以及ngx_http_index_module模块 找不到索引文件时的列表目录
  --without-http_geo_module          #禁止,该模块允许您创建其值取决于客户端IP地址的变量
  --without-http_map_module          #禁止,该模块该模块允许为A / B测试创建变量
  --without-http_split_clients_module #禁止,该模块允许为A / B测试创建变量
  --without-http_referer_module      #禁止,该模块允许阻止对具有标头中“Referer”字段的无效值的请求的站点的访问
  --without-http_rewrite_module      #禁止构建允许您重定向和更改请求URI的HTTP服务器模块 。对于该模块的组装和操作,需要PCRE库。
  --without-http_proxy_module        #禁止组装 HTTP服务器代理模块
  --without-http_fastcgi_module      #禁止,该模块允许向FastCGI服务器发送请求
  --without-http_uwsgi_module        #禁止,该模块允许向uwsgi服务器发送请求
  --without-http_scgi_module         #禁止,该模块允许向SCGI服务器发送请求
  --without-http_grpc_module         #禁止,该模块允许向gRPC服务器发送请求
  --without-http_memcached_module    #禁止,该模块允许从memcached服务器接收答案
  --without-http_limit_conn_module   #禁止,该模块允许您使用给定密钥限制连接数,特别是来自单个IP地址的连接数
  --without-http_limit_req_module    #禁止,该模块允许您限制处理给定密钥请求的速度,或者作为特殊情况,处理从单个IP地址接收的请求的速度
  --without-http_empty_gif_module    #禁止,单象素透明 GIF
  --without-http_browser_module      #禁止,该模块创建的变量的值取决于请求标头中“User-Agent”字段的值
  --without-http_upstream_hash_module #禁止构建实现负载平衡哈希方法的模块
  --without-http_upstream_ip_hash_module #禁用实现ip_hash负载均衡方法的模块的程序集 
  --without-http_upstream_least_conn_module #禁用构建实现least_conn负载平衡方法的模块 
  --without-http_upstream_keepalive_module #禁止组装实现与上游服务器的高速缓存连接的模块
  --without-http_upstream_zone_module #禁止组装允许您将一组上游服务器的工作状态保存在 共享内存中的模块

  --with-http_perl_module            #该模块允许您在Perl上编写位置处理程序和变量,以及将Perl调用插入SSI
  --with-http_perl_module=dynamic    enable dynamic ngx_http_perl_module
  --with-perl_modules_path=PATH      #指定Perl模块文件所在的目录
  --with-perl=PATH                   #指定Perl所在的目录

  --http-log-path=PATH               #设置主HTTP请求日志文件的名称
  --http-client-body-temp-path=PATH  #设置用于存储具有客户端请求主体的临时文件的目录。可以nginx.conf使用client_body_temp_path指令 在配置文件中更改文件名
  --http-proxy-temp-path=PATH        #设置用于存储临时文件的目录,其中包含从代理服务器接收的数据。可以nginx.conf使用proxy_temp_path指令 在配置文件中更改文件名
  --http-fastcgi-temp-path=PATH      #设置用于存储临时文件的目录,其中包含从FastCGI服务器接收的数据。可以nginx.conf使用fastcgi_temp_path指令 在配置文件中更改文件名
  --http-uwsgi-temp-path=PATH        #设置用于存储临时文件的目录,其中包含从uwsgi-servers接收的数据。可以nginx.conf使用uwsgi_temp_path指令 在配置文件中更改文件名
  --http-scgi-temp-path=PATH         #设置用于存储临时文件的目录,其中包含从SCGI服务器接收的数据。可以nginx.conf使用scgi_temp_path指令 始终在配置文件中更改文件名

  --without-http                     #拒绝HTTP服务器
  --without-http-cache               #禁用HTTP缓存

  --with-mail                        #启用POP3 / IMAP4 / SMTP 邮件代理服务器
  --with-mail=dynamic                enable dynamic POP3/IMAP4/SMTP proxy module
  --with-mail_ssl_module             #允许使用SSL / TLS为邮件代理组装模块。对于此模块的组装和操作,需要OpenSSL库
  --without-mail_pop3_module         #禁止,邮件代理服务器中的POP3协议
  --without-mail_imap_module         #禁用,邮件代理服务器中的IMAP协议
  --without-mail_smtp_module         #禁用,邮件代理服务器中的IMAP协议

  --with-stream                      #允许组装 流模块 以进行TCP / UDP代理和平衡
  --with-stream=dynamic              enable dynamic TCP/UDP proxy module
  --with-stream_ssl_module           #允许模块组件通过SSL / TLS协议进行流模块操作 。模块不会。对于此模块的组装和操作,需要OpenSSL库
  --with-stream_realip_module        #允许将客户端的地址更改为PROXY协议头中传输的地址
  --with-stream_geoip_module         #该模块使用现成的MaxMind数据库创建其值取决于客户端IP地址的 变量
  --with-stream_geoip_module=dynamic enable dynamic ngx_stream_geoip_module
  --with-stream_ssl_preread_module   #该模块允许从ClientHello消息中提取信息 而不需要SSL / TLS终止
  --without-stream_limit_conn_module #禁止,该模块允许您限制给定密钥的连接数,特别是来自单个IP地址的连接数
  --without-stream_access_module     #禁止,该模块允许您限制对某些客户端地址的访问
  --without-stream_geo_module        #禁止,该模块允许您创建其值取决于客户端IP地址的变量
  --without-stream_map_module        #禁止,该模块允许您创建其值取决于其他变量值的变量
  --without-stream_split_clients_module
                                     #禁止,该模块允许为A / B测试创建变量
  --without-stream_return_module     #禁止,该模块允许将指定值发送到客户端,然后关闭连接
  --without-stream_upstream_hash_module
                                     #禁止构建实现负载平衡哈希方法的模块 
  --without-stream_upstream_least_conn_module #禁用构建实现least_conn负载平衡方法的模块
  --without-stream_upstream_zone_module #禁止组装允许您将一组上游服务器的工作状态保存在 共享内存中的模块

  --with-google_perftools_module     #支持使用Google Performance Tools分析nginx工作流程
  --with-cpp_test_module             enable ngx_cpp_test_module

  --add-module=PATH                  #组装外部模块目录
  --add-dynamic-module=PATH          #组装外部动态模块目录

  --with-compat                      #包括与动态模块的兼容模式

  --with-cc=PATH                     #指定用于构建的编译器
  --with-cpp=PATH                    #指定在构建期间使用的预处理器
  --with-cc-opt=OPTIONS              #指定将添加到CFLAGS变量的其他参数,如果你想增加可运行文件的数量 select(),使用--with-cc-opt="-D FD_SETSIZE=2048"
  --with-ld-opt=OPTIONS              #指定将在链接期间使用的其他参数
  --with-cpu-opt=CPU                 允许组件,用于以下处理器之一:
                                     pentium, pentiumpro, pentium3, pentium4,
                                     athlon, opteron, sparc32, sparc64, ppc64

  --without-pcre                     #禁止使用PCRE库
  --with-pcre                        #允许使用PCRE库
  --with-pcre=DIR                    #指定PCRE库的路径
  --with-pcre-opt=OPTIONS            #设置其他PCRE构建选项
  --with-pcre-jit                    #构建一个 支持JIT 的 PCRE库(1.1.12,pcre_jit指令 )

  --with-zlib=DIR                    #指定zlib库的路径
  --with-zlib-opt=OPTIONS            #设置其他zlib构建选项
  --with-zlib-asm=CPU                允许在以下处理器中的一个优化的库的zlib汇编插入件的组件的使用:
                                     pentium, pentiumpro

  --with-libatomic                   #使用libatomic_ops库启用构建
  --with-libatomic=DIR               #指定libatomic_ops库源的路径

  --with-openssl=DIR                 #指定OpenSSL库源的路径
  --with-openssl-opt=OPTIONS         #为OpenSSL设置其他构建选项

  --with-debug                       #允许调试日志

Over ~

版权协议须知!

本篇文章来源于 Uambiguous ,如本文章侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意

661 0 2019-03-25


分享:
icon_mrgreen.gificon_neutral.gificon_twisted.gificon_arrow.gificon_eek.gificon_smile.gificon_confused.gificon_cool.gificon_evil.gificon_biggrin.gificon_idea.gificon_redface.gificon_razz.gificon_rolleyes.gificon_wink.gificon_cry.gificon_surprised.gificon_lol.gificon_mad.gificon_sad.gificon_exclaim.gificon_question.gif
博主卡片
林里克斯 博主大人
一个致力于Linux的运维平台
运维时间
搭建这个平台,只为分享及记载自己所遇之事和难题。

现在时间 2024-04-19

今日天气
站点统计
  • 文章总数:240篇
  • 分类总数:29个
  • 评论总数:10条
  • 本站总访问量 213936 次

@奥奥

@Wong arrhenius 牛比

@MakerFace 厉害了!