#第三方模块需要先进行下载,然后再编译时指定文件目录

1.查看当前编译模块

root@nginx sbin]# ./nginx -V     #查看当前添加模块
nginx version: nginx/1.14.
built by gcc 4.8. (Red Hat 4.8.-) (GCC)
configure arguments: --prefix=/nginx/ --add-module=/usr/local/src/nginx-1.14./echo-nginx-module-master
[root@nginx sbin]#

2.查看需要添加的模块

#本次添加的模块 ngx_stream_core_module  属于属于nginx 官方模块不需要下载,第三方模块需要下载解压

[root@nginx stream]# pwd
/usr/local/src/nginx-1.14./src/stream
[root@nginx stream]# ls
ngx_stream_access_module.c ngx_stream_split_clients_module.c
ngx_stream.c ngx_stream_ssl_module.c
ngx_stream_core_module.c ngx_stream_ssl_module.h
ngx_stream_geoip_module.c ngx_stream_ssl_preread_module.c
ngx_stream_geo_module.c ngx_stream_upstream.c
ngx_stream.h ngx_stream_upstream.h
ngx_stream_handler.c ngx_stream_upstream_hash_module.c
ngx_stream_limit_conn_module.c ngx_stream_upstream_least_conn_module.c
ngx_stream_log_module.c ngx_stream_upstream_round_robin.c
ngx_stream_map_module.c ngx_stream_upstream_round_robin.h
ngx_stream_proxy_module.c ngx_stream_upstream_zone_module.c
ngx_stream_realip_module.c ngx_stream_variables.c
ngx_stream_return_module.c ngx_stream_variables.h
ngx_stream_script.c ngx_stream_write_filter_module.c
ngx_stream_script.h
[root@nginx stream]#

3.添加 stream 模块进行重新编译

root@nginx sbin]# ./nginx -V
nginx version: nginx/1.14.
built by gcc 4.8. (Red Hat 4.8.-) (GCC)
configure arguments: --prefix=/nginx/ --add-module=/usr/local/src/nginx-1.14./echo-nginx-module-master
[root@nginx sbin]#

[root@nginx sbin]# cd /usr/local/src/nginx-1.14.2
[root@nginx nginx-1.14.2]# ls
auto CHANGES.ru configure echo-nginx-module-master html Makefile objs src
CHANGES conf contrib echo-nginx-module-master.zip LICENSE man README

#配置时需要将原先添加模块重新添加一遍
[root@nginx nginx-1.14.2]# ./configure --prefix=/nginx/ --add-module=/usr/local/src/nginx-1.14.2/echo-nginx-module-master --with-stream

4.  进行make操作

此处nginx源码目录为:/usr/local/src/nginx-1.14.2,即为编译命令执行目录。
make 此处一定不能使用make install命令,执行该命令会将原有nginx目录进行覆盖。

5. 停止nginx 服务,替换新的nginx 程序启动文件

[root@nginx nginx-1.14.]# cd /nginx/sbin/ #进入nginx 启动目录
[root@nginx sbin]# ls
nginx
[root@nginx sbin]# ./nginx -s stop #停止服务
nginx: [emerg] unknown directive "stream" in /nginx//conf/nginx.conf:51

[root@nginx sbin]# cp nginx nginx-no-stream   #备份nginx 启动文件
[root@nginx sbin]# ls
nginx nginx-no-stream
[root@nginx sbin]# cp /usr/local/src/nginx-1.14.2/objs/nginx ./nginx   #替换原有nginx  程序文件
cp: overwrite ‘./nginx’? y
[root@nginx sbin]#

root@nginx conf]# cd ../sbin
[root@nginx sbin]# ls
nginx nginx-no-stream
[root@nginx sbin]# ./nginx-no-stream -t     #nginx --t  检查添加了 stream 字段的配置文件,原有文件报错
nginx: [emerg] unknown directive "stream" in /nginx//conf/nginx.conf:15
nginx: configuration file /nginx//conf/nginx.conf test failed
[root@nginx sbin]# ./nginx -t         #nginx -t 检查添加了stream 字段的配置文件, 检查通过
nginx: the configuration file /nginx//conf/nginx.conf syntax is ok      
nginx: configuration file /nginx//conf/nginx.conf test is successful

[root@nginx sbin]# ./nginx -V
nginx version: nginx/1.14.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
configure arguments: --prefix=/nginx/ --add-module=/usr/local/src/nginx-1.14.2/echo-nginx-module-master --with-stream
[root@nginx sbin]#

 

nginx 番外----添加第三方模块的更多相关文章

  1. 玩玩 Nginx 2-----给Nginx添加第三方模块(动态更新upstream)

          接上一篇,我们在初始化安装的时候添加了nginx_lua模块,然后了解到nginx不可以动态加载模块,所以当你安装第三方模块的时候需要覆盖nginx文件.接下来一起看看如何安装nginx第 ...

  2. yum安装的Nginx添加第三方模块支持tcp

    需求:生产有个接口是通过socket通信.nginx1.9开始支持tcp层的转发,通过stream实现的,而socket也是基于tcp通信. 实现方法:Centos7.2下yum直接安装的nginx, ...

  3. yum安装下的nginx,如何添加模块,和添加第三方模块

    需求:生产有个接口是通过socket通信.nginx1.9开始支持tcp层的转发,通过stream实现的,而socket也是基于tcp通信. 实现方法:Centos7.2下yum直接安装的nginx, ...

  4. Nginx网络架构实战学习笔记(四):nginx连接memcached、第三方模块编译及一致性哈希应用

    文章目录 nginx连接memcached 第三方模块编译及一致性哈希应用 总结 nginx连接memcached 首先确保nginx能正常连接php location ~ \.php$ { root ...

  5. python永久添加第三方模块,PYTHONPATH的设置

    今天用pip安装pymysql后遇到了一个问题,在PyCharm中import pymysql模块时,运行却提示我找不到pymysql mudule 我先考虑的是pymysql没有安装成功,但是cmd ...

  6. nginx添加第三方模块

    原已经安装好的nginx,现在需要添加一个未被编译安装的模块: nginx -V 可以查看原来编译时都带了哪些参数,看看nginx是哪个版本,去下载一个nginx的源码,解压 原来的参数:--pref ...

  7. nginx重新编译添加ssl模块

    https://www.cnblogs.com/zhming26/p/6278667.html https nginx配置 找到安装nginx的源码根目录,如果没有的话下载新的源码 http://ng ...

  8. NO.3_1:自学python之路------番外:第三方库安装、numpy

    引言 Python因为pip的存在,使得第三方库的发布和获取都比较方便.并且Python对跨平台的支持,使得其相较于C++,Java更加方便使用.在本文中,将会介绍在Windows中安装第三方库的方法 ...

  9. 前端开发--nginx番外篇

    Centos7下Nginx开发使用(背景: 阿里云ECS Centos7) 安装和启动 安装教程 Centos7安装Nginx实战 需要主意的如下: 文中第四步 4.配置编译参数命令:(可以使用./c ...

随机推荐

  1. Sublime Text 3 3143 注册码和遇到的PyV8无法下载问题

    packagecontrol官网:https://packagecontrol.io/installation sublime安装之后,安装Package Control管理插件. sublime3 ...

  2. 完美:利用旧版iCloud更改Apple ID地区

    朋友们,你们有没有尝试过从大陆地区以外的App Store上下载APP呢?或许听起来蛮有趣的,其实并不难,只需要更改Apple ID的地区就可以了,许多用户就是卡在下一步,需要输入付款信息,不过下面苹 ...

  3. 使用ReentrantLock和Condition来代替内置锁和wait(),notify(),notifyAll()

    使用ReentrantLock可以替代内置锁,当使用内置锁的时候,我们可以使用wait() nitify()和notifyAll()来控制线程之间的协作,那么,当我们使用ReentrantLock的时 ...

  4. Excel条件格式

    任务需求,将Excel中年龄为90后出生的人员筛选出来,并将重复的人员数据删除. 一.Excel去重 选中表格数据->数据->删除重复值 此时弹出对话框,选择去重列. 点击确定即可. 二. ...

  5. D - Windows Message Queue

    来源hdu1509 Message queue is the basic fundamental of windows system. For each process, the system mai ...

  6. Namespace declaration statement has to be the very first statement in the script-去除bom头

    今天准备测试小程序的签名加密,但是刚引入官方的“加密数据解密算法”文件到项目里,然后为每个文件添加命名空间的时候,不管怎么加都报“Namespace declaration statement has ...

  7. oracle数据库字符集查询

    1>数据库服务器字符集 select * from nls_database_parameters,其来源于props$,是表示数据库的字符集. 查询结果如下 NLS_LANGUAGE AMER ...

  8. mysql存储emoji问题

    前一段时间,项目中需要在数据库中存储emoji,由于编码格式不对,直接导致数据库报错,后来修改mysql的编码,就解决了 emoji符号实际上是文本,并不是图片,它们仅仅显示为图片 在mysql5.5 ...

  9. A Java back-end engineer's study notes

    loveincode's notes 学习工作中的一些记录,收藏. 人气很高的链接库 计算机基础相关笔记 操作系统 , 编译原理 , 计算机网络 , 互联网协议... 常用数据结构与算法 Java 实 ...

  10. git 设置tracking information

    There is no tracking information for the current branch.Please specify which branch you want to merg ...