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

1.查看当前编译模块

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

2.查看需要添加的模块

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

  1. [root@nginx stream]# pwd
  2. /usr/local/src/nginx-1.14./src/stream
  3. [root@nginx stream]# ls
  4. ngx_stream_access_module.c ngx_stream_split_clients_module.c
  5. ngx_stream.c ngx_stream_ssl_module.c
  6. ngx_stream_core_module.c ngx_stream_ssl_module.h
  7. ngx_stream_geoip_module.c ngx_stream_ssl_preread_module.c
  8. ngx_stream_geo_module.c ngx_stream_upstream.c
  9. ngx_stream.h ngx_stream_upstream.h
  10. ngx_stream_handler.c ngx_stream_upstream_hash_module.c
  11. ngx_stream_limit_conn_module.c ngx_stream_upstream_least_conn_module.c
  12. ngx_stream_log_module.c ngx_stream_upstream_round_robin.c
  13. ngx_stream_map_module.c ngx_stream_upstream_round_robin.h
  14. ngx_stream_proxy_module.c ngx_stream_upstream_zone_module.c
  15. ngx_stream_realip_module.c ngx_stream_variables.c
  16. ngx_stream_return_module.c ngx_stream_variables.h
  17. ngx_stream_script.c ngx_stream_write_filter_module.c
  18. ngx_stream_script.h
  19. [root@nginx stream]#

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

  1. root@nginx sbin]# ./nginx -V
  2. nginx version: nginx/1.14.
  3. built by gcc 4.8. (Red Hat 4.8.-) (GCC)
  4. configure arguments: --prefix=/nginx/ --add-module=/usr/local/src/nginx-1.14./echo-nginx-module-master
  5. [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操作

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

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

  1. [root@nginx nginx-1.14.]# cd /nginx/sbin/ #进入nginx 启动目录
  2. [root@nginx sbin]# ls
  3. nginx
  4. [root@nginx sbin]# ./nginx -s stop #停止服务
  5. 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]#

  1.  

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. vim不支持鼠标中键拷贝粘贴

    ubuntu 和mint默认安装的vim是不支持系统剪切.粘贴版的,需要执行以下安装:sudo apt-get install vim-gnome

  2. VC++ 字符串Dword、LPSTR、LPWSTR、LPCSTR、LPCWSTR、LPTSTR、LPCTSTR

            类   型     MBCS  UNICODE TCHAR char char WCHAR wchar_t wchar_t LPSTR char* char* LPCSTR const ...

  3. mysql之表格的关联关系

    1.’基本模式有多对一,多对多,一对一.关联的两个基本组建为外键列和参照列 典型的多对一模式,很普遍,如部门表和员工表,即一个部门可以有多个员工. 对于多对多的模式,就需要建立中间表,将其转换为多对一 ...

  4. 前端页面展示MySQL数据并实现前后端互动

    前端页面使用H-ui框架  后端使用flask框架  数据库使用mysql  连接数据库通过pymysql实现 前端代码如下 <html lang="en"> < ...

  5. Web前端攻击方式及防御措施

    一.XSS [Cross Site Script]跨站脚本攻击 恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户 ...

  6. C++ main函数的参数

    C++的main函数可以没有输入参数,也可以有输入参数,而且只能有两个参数,习惯上coding如下: int main(int argc, char* argv[]) 或者 int main(int ...

  7. 微信小程序之wx.showmodal

    1. . wx.showModal({ title: "2222步", content: currentCache ? "确定为自己城市添加步数吗" : &qu ...

  8. 东大oj1155 等凹函数

    Problem Description 定义一种数字称为等凹数字,即从高位到低位,每一位的数字先递减再递增,且该数是一个回文数,即从左读到右与从右读到左是一样的,仅形成一个等凹峰,如543212345 ...

  9. 不简单的工厂:实际体验 .NET Core 2.1 新生物 HttpClientFactory

    在 HttpClientFactory 出生之前,由于 HttpClient 臭名昭著的“dispose之后4分钟TCP连接才会被关闭”问题(详情),只能使用单例或静态的 HttpClient ,比如 ...

  10. ASP.NET MVC中使用FluentValidation验证实体(转载)

    1.FluentValidation介绍 FluentValidation是与ASP.NET DataAnnotataion Attribute验证实体不同的数据验证组件,提供了将实体与验证分离开来的 ...