注:
1.nginx从1.9.0开始,新增加了一个stream模块,所以本文适用于1.9.0版本以上的nginx。

2.没有特殊标注需要root的用普通nginx用户就可以,比如你在a用户下安装nginx 那就su - a 就可以啦,但是编译的话一定要用root,不然会报权限错误问题。
3.具体问题,具体分析,以下内容仅供参考。

以下正文:

模块加载位置(root用户加载):

Cd  /nginx-1.21.0

加载模块 添加–with-stream

./configure --prefix=/home /nginx/nginx --add-module=/home /nginx-rtmp-module-master --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/home /openssl-1.1.1b --with-pcre=/home /pcre-8.43 --with-stream

加载完成后进行make编译
千万不要进行make install !!!

完成编译后 现将之前的nginx文件进行备份

Cd /home/nginx/nginx/sbin(启动文件位置)
Cp nginx nginx.bak.xxx

再将编译好的nginx文件复制过来(编译文件)

Cp  /nginx-1.21.0/objs/nginx .

因为加的是–with-stream 所以要将nginx.conf修改一下 添加上模块内容

Cd /home /nginx/nginx/conf
Vi nginx.conf

添加需要的内容,格式如下:

stream{..........
}

重启nginx(/home/nginx/nginx/sbin)

./nginx -s reload

诶嘿!报错了.
线程数不够,具体报错忘截图了。
解决如下:
修改nginx.conf

Worker_connections 1024  改成102400

再次启动,诶嘿,又报错了
nginx 出错:socket() failed (24: Too many open files) while connecting to upstream
修改linux打开文件句柄数,编辑vi /etc/security/limits.conf(需要root修改),添加

   <domain>      <type>          <item>         <value>
*                soft             nofile          204800
*                hard            nofile          204800

修改nginx打开文件数, 编辑nginx.conf,添加worker_rlimit_nofile值

worker_rlimit_nofile 20480;

再再次启动,诶嘿,又又报错了
nginx: [error] open() “/run/nginx.pid” failed (2: No such file or directory)(类似错误,就是找不到nginx.pid文件)

这是/logs下没有nginx.pid文件
在/home /nginx/nginx/sbin 执行

./nginx -c /home /nginx/nginx/conf/nginx.conf

再再再次执行,好了!!

查看页面,没有问题。

添加模块成功!!!

总结:仅仅只是添加一个模块,就会出现很多错误,但只要细心观察,耐心解决,还有什么解决不了的呢。
生活愉快~

添加nginx中的stream模块相关推荐

  1. Nginx服务使用stream模块TCP代理rtmp视频流

    搭建环境 centos7.5,nginx-1.12.1 注释 nginx版本建议为1.9版本以上(nginx从1.9.0开始,新增加了一个stream模块,可以使用这个模块) 1.9版本以下nginx ...

  2. nginx中的event模块

    event中将事件驱动模块,由于支持跨平台,抽象出了event模块.它支持的event类型有: 1.AIO(异步I/O) 2./dev/poll(solaris和unix特有) 3.epoll(lin ...

  3. Nginx使用stream模块分流实现端口复用

    使用Nginx复用端口有很多方法,最普遍的方法是在不同的server块中监听同一端口,根据不同的主机名完成分流.本文介绍了一种较新的端口复用方法,它可以方便地对TLS加密的TCP数据进行分流. 1 N ...

  4. 利用configure脚本将定制的模块加入到Nginx中

    在1.6节提到的configure执行流程中,其中有两行脚本负责将第三方模块加入到Nginx中,如下所示. . auto/modules . auto/make 下面完整地解释一下configure脚 ...

  5. NGINX中如何根据客户端IP地址控制访问

    NGINX Web 服务器安全加固有多种方法,其中一种是基于 IP 地址的访问控制.本指南解释了如何通过在 NGINX 中基于客户端的 IP 地址控制访问来保护 Web 应用程序. NGINX中基于客 ...

  6. 利用nginx的stream模块实现内网端口的转发代理

    nginx从1.9.0开始,新增加了一个stream模块,用来实现四层协议的转发.代理或者负载均衡等.比如在内网有一个mysql服务,想暴露到公网上去使用,就可以通过nginx代理的方式通过nginx ...

  7. linux nginx 安装stream,Centos7下Nginx简单搭建与stream模块简单配置

    一:Nginx安装 搭建环境:Centos 7 需要软件包:openssl.zlib.pcre.nginx (软件包下载地址个人网盘可能会失效:https://pan.baidu.com/s/1qYN ...

  8. Nginx四层负载均衡模块添加

    Nginx四层负载均衡 Nginx在1.9之后,增加了一个stream模块,用来实现四层协议的转发.代理.负载均衡等.stream模块的用法跟http的用法类似,允许我们配置一组TCP或者UDP等协议 ...

  9. nginx模块定制开发中介入http模块的方法及NGX_HTTP_CONTENT_PHASE阶段的详细介绍

    ginx模块定制开发中,大多数都是针对http的模块的定制开发,比如添加一个打印"hello world"的功能.记录http请求内容.对http请求作出一个特殊响应等,此时,需要 ...

最新文章

  1. python发带附件的中文邮件
  2. HTML5 Web app开发工具Kendo UI Web中图像浏览器的使用
  3. Windows环境下32位汇编程序设计C版code--第五章(一)
  4. Python读文件要用到的一些东西
  5. SpringBoot 如何生成接口文档,老鸟们都这么玩的!
  6. C# Serializable学习
  7. 12c闪回 oracle_Oracle 12c R2新特性: PDB级闪回(Flashback PDB)
  8. python把源代码打包成.exe文件
  9. 【数据结构笔记39】哈希表/散列表、(数据关键字/字符串关键字)散列构造函数
  10. java编程基础码_【Java编程的逻辑】编程基础
  11. 微博基于 Flink 的机器学习实践
  12. Spring Boot:The field file exceeds its maximum permitted size of 1048576 bytes.
  13. ME909 ECM拨号上网总结
  14. 借助Grub4DOS的grldr启动Windows PE(软启动)
  15. php加载COM组件失败原因及其解决方法
  16. 定位首款弹幕K歌软件 阿里鲸鸣未来究竟能够走多远?
  17. Unity图片闪烁效果
  18. window下搭建gitlab环境 ---- 简单理解:window下的gitlab就是Bonobo Git Server
  19. 关于微信小程序A 与 微信小程序B 之间的跳转问题
  20. 太急了点吧?贴吧PWA20天就出炉了

热门文章

  1. 计算机组装策略摘要,浅谈计算机组装维修论文
  2. CSS样式添加及基础语法------借鉴w3shool.com.cn
  3. 美联储加息50个基点以对抗通胀
  4. PopStar(消灭星星)游戏源代码下载、分析及跨平台移植---第二篇(算法)
  5. 2d激光slam学习
  6. global global_我们在Global Game Jam 2016上所做的工作
  7. 版本号semver标准
  8. Gavin老师Transformer直播课感悟 - 基于Retrieval的具有Fine-grained架构的对话系统(四)
  9. 螺钉装弹垫平垫机器人_螺栓是用平垫,还是弹垫,怎么选择?
  10. Linux之文件共享服务