首页 > 系统相关 >yum 安装的nginx 添加其他模块 stream

yum 安装的nginx 添加其他模块 stream

时间:2023-04-26 18:46:57浏览次数:45  
标签:http stream -- module nginx yum path

需求:生产有个接口是通过socket通信。nginx1.9开始支持tcp层的转发,通过stream实现的,而socket也是基于tcp通信。

实现方法:Centos7.2下yum直接安装的nginx,添加新模块支持tcp转发;重新编译Nginx并添加 --with-stream 参数。

实现过程:

1.  查看nginx版本模块

  1. [root@pre ~]# nginx -V

2.  下载一个同版本可编译的Nginx

  1. cd /opt
  2. wget http://nginx.org/download/nginx-1.12.2.tar.gz
  3. tar xf nginx-1.12.2.tar.gz && cd nginx-1.12.

3.  备份原Nginx文件

  1. mv /usr/sbin/nginx /usr/sbin/nginx.bak
  2. cp -r /etc/nginx{,.bak}

4.  重新编译Nginx

检查模块是否支持,比如这次添加 limit 限流模块 和 stream 模块:
./configure –help | grep limit
这里写图片描述
ps:-without-http_limit_conn_module disable 表示已有该模块,编译时,不需要添加

./configure –help | grep stream
这里写图片描述
ps:–with-stream enable 表示不支持,编译时要自己添加该模块

根据第1步查到已有的模块,加上本次需新增的模块: --with-stream

  1. cd /opt/nginx-1.12.2
  2.  
  3. ./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic' --with-ld-opt='-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E' --with-stream

以上编译时,如出现缺少依赖,一般需要安装以下模块,安装完再次编译:

yum install -y redhat-rpm-config.noarch pcre-devel openssl openssl-devel  libxml2 libxml2-dev libxslt-devel gd-devel perl-devel perl-ExtUtils-Embed gperftools  GeoIP GeoIP-devel GeoIP-data

 

5.  编译通过,继续验证 
继续输入:make  
make完成后不要继续输入“make install”,以免现在的nginx出现问题 
以上完成后,会在objs目录下生成一个nginx文件,先验证:

  1. /opt/nginx-1.12.2/objs/nginx -t
  2. /opt/nginx-1.12.2/objs/nginx -V

6.  替换Nginx文件并重启

  1. cp /opt/nginx-1.12.2/objs/nginx /usr/sbin/
  2. nginx -s reload

7.  检查

  1. [root@pre ~]# nginx -V

添加模块成功!!!

标签:http,stream,--,module,nginx,yum,path
From: https://www.cnblogs.com/walkersss/p/17356958.html

相关文章

  • Nginx
     Nginx(发音为“engine-x”)是一种高性能、开源的Web服务器和反向代理服务器软件。Nginx最初由俄罗斯工程师IgorSysoev于2004年创建,现在由Nginx公司(以前称为NginxInc.)和广大的社区维护和支持。Nginx以其出色的性能和高度的可靠性而闻名,被广泛用于构建高访问量的Web应用、负载......
  • 重启nginx后提示nginx.pid文件丢失了
    //在执行nginx-sreload命令时遇到了错误,因为Nginx尝试在日志目录中读取pid文件,但是找不到它。//这通常是因为Nginx没有在启动时正确地生成该文件引起的。//为了解决这个问题,您可以尝试启动Nginx并手动创建pid文件。请使用以下命令启动Nginx:sudo/www/server/nginx/sbin/......
  • Nginx部署成Windows服务
    把nginx部署成服务,随系统开机启动,方法如下: 一、下载官网下载地址:http://nginx.org/en/download.html准备nginx-service 二、配置 三、安装服务 四、启动 Done. ......
  • Nginx常用配置及和基本功能讲解
    作者:京东物流 殷世杰Nginx已经广泛应用于J-one和Jdos的环境部署上,本文对Nginx的常用的配置和基本功能进行讲解,适合Nginx入门学习。1核心配置找到Nginx安装目录下的conf目录下nginx.conf文件,Nginx的基本功能配置是由它提供的。Nginx的配置文件(conf/nginx.conf)整体上分为如......
  • ChatGPT:宝塔面板中nginx配置代理访问openai
    反向代理配置代码点击查看代码#PROXY-START/location/{proxy_passhttps://api.openai.com;proxy_set_headerHost$proxy_host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;proxy_se......
  • java stream 多重groupingBy
    importcom.alibaba.fastjson.JSON;importlombok.Data;importjava.util.ArrayList;importjava.util.List;importjava.util.Map;importjava.util.stream.Collectors;/***@ClassNameTest*@Description*@Authorcsg*@Data2023/4/2521:31*@Version......
  • nginx报错
    nginx重启失败:nginx:[crit]pread()"/var/run/nginx/nginx.pid"failed(21:Isadirectory)解决方案:查看进程ps-ef|grepnginx强行杀死主进程kill7688启动nginx../sbin/nginx此时停止或者刷新nginx都可以../sbin/nginx-sstop../sbin/nginx-srel......
  • nginx-lua-fastdfs-GraphicsMagick整合
      无意发现了一个不错的分布式文件系统。fastdfs开源的分布式文件系统,此脚本利用nginxlua模块,动态生成图片缩略图,fastdfs只存一份原图。lua通过socket获取fastdfs的原图,并存放到本地,根据不同规则url,例如:_60x60.jpg、_80x80.jpg,类似淘宝图片url规则。利用gm命令生成本地缩略图......
  • Nginx + Nacos2.x集群配置
    Nginx:#集群配置http{upstreamnacos-cluster{ip_hash;server127.0.0.1:8858;server127.0.0.1:8868;server127.0.0.1:8878;}server{listen8838;server_namelocalhost;}location/nacos{ ......
  • java.lang.NoClassDefFoundError: org/apache/commons/io/output/UnsynchronizedByteA
    java.lang.NoClassDefFoundError:org/apache/commons/io/output/UnsynchronizedByteArrayOutputStream  一、问题现象在导出Excel过程中,程序报错如下:Exceptioninthread"main"java.lang.NoClassDefFoundError:org/apache/commons/io/output/UnsynchronizedByteArra......