ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[TOC] 这一小节我就详细给大家介绍下nginx源码安装配置项的相关内容。 首先我们可以使用下面的方法查看编译情况: ~~~ nginx -V 2>&1 | nginx -V 2>&1| grep "configure" nginx -V 2>&1| grep "configure" | awk -F : '{print $2}' | xargs -n 1 ~~~ ### 通用配置选项 ~~~ --prefix=<path> 安装的根路径,所有的其他的路径都要依赖此选项 --sbin-path=<path> 指定nginx二进制文件的路径,没指定的话 这个路径依赖--prefix选项 --conf-path=<path> 如果在命令行未指定配置文件,那么将会通过这里指定的路径,nginx将会去那里查找他的配置文件 --error-log-path=<path> 错误文件路径,nginx写入错误日志文件地址,除非有其他配置 --pid-path=<path> nginx master进程pid写入的文件位置,通常在var/run下 --lock-path=<path> 共享存储器互斥锁文件路径 --user=<user> worker进程运行的用户 --group=<group> worker进程运行的组 --http-log-path=<path> nginx访问情况日志,nginx运行日志 ~~~ ###邮件模块都有配置 ~~~ --with-mail 激活POP3/IMAP4/SMTP代理模块,默认未激活 --with-mail_ssl_module 这个模块使得上述代理模块尅游使用ssl --without-mail_pop3_module 启用mail模块单独禁用pop3模块 --without-mail_imap_module 启用mail模块但是禁用imap模块 --without-mail_smtp_module --without-http 完全禁用http模块,仅仅支持mail模块 --with-openssl=DIR 设置openssl源码包安装路径 ~~~ ###制定路径的配置选项 ~~~ --without-http-cache 在使用upstream模块的时候,nginx能够配置本地缓存,此选项可以禁用缓存 --with-http_prel_module 这个模块允许nginx使用ssl调用perl或者直接执行perl(使用会降低性能) --with-perl_modules_path=<path> 设置perl模块的路径 --http-client-body-temp-path=PATH 设置客户端请求临时文件路径,如果WebDAV启用,推荐设置该路径为同一文件系统上的目录作为最终的目的地 --http-proxy-temp-path=PATH 代理设置后,设置http proxy临时文件路径 --http-fastcgi-temp-path=PATH 设置http fastcgi临时文件路径 --http-scgi-temp-path=PATH 设置http scgi临时文件路径 ~~~ ###使用其他模块 ~~~ --with-http_ssl_module 如果需要对流量加密.可使用此选项,在urls中开始部分将会是https(需要openssl库) --with-http_realip_module 允许ngx_http_realip_module模块(mod_rpaf)此模块支持显示真实来源IP地址,主要用于NGINX做前端负载均衡服务器使用,如果你的nginx在七层负载均衡器或者其它设备之后,它们将Http头中的客户端ip地址传递,这时需要启用此模块,在多个客户处于一个ip地址的情况下使用 --with-http_addition_module 作为一个输出过滤器,使你能够在请求经过一个location前或后时在该location本身添加内容 --with-http_xslt_module 这个模块是一个过滤器,它可以通过XSLT模板转换XML应答 --with-http_image_filter_module 图像过滤器,在将图像投递到客户之前进行处理(需要libgd库) --with-http_geoip_module 使用该模块,能够设置设置个中变量以便在配置区段中使用 --with-http_sub_module 允许ngx_http_sub_module模块这个模块可以能够在nginx的应答中搜索并替换文本 --with-http_flv_module 允许ngx_http_flv_module模块(mod_flvx)这个模块支持对FLV(flash)文件的拖动播放 --with-http_mp4_module 允许ngx_http_gzip_static_module模块(mod_dflate)这个模块在一个预压缩文件传送到开启Gzip压缩的客户端之前检查是否已经存在以“.gz”结尾的压缩文件,这样可以防止文件被重复压缩 --with-http_gunzip_module 对于不支持gzip编码的客户,该模块用于为客户解压缩预压缩内容 --with-http_random_index_module 允许ngx_http_random_index_module模块(mod_autoindex),从目录中选择一个随机主页 --with-http_secure_link_module 该模块提供一种机制,它会将一个哈希值链接到一个url中,因此,只有那些使用正确的密码能够计算链接 --with-http_stub_status_module 这个模块可以取得一些nginx的运行状态,如果是工业状况,可以直接取消输出的状态信息科使用RRDtool或类似的工具绘制成图 ~~~