Linux环境Nginx动态添加模块

说明:

有时我们需要在现有的web服务器上增加新的模块实现更为丰富的功能,Nginx算是比较常用的web服务器,但是nginx也不仅仅只可以做web服务器,只要有对应的插件还可用作反向代理、即时通讯、文件下载、流媒体服务等功能,如果已经安装好了Nginx又不想重新安装覆盖的前提下如何新增模块,需要怎么弄呢?

具体:

这里以安装第三方nginx-push-stream-module模块为例

Nginx的模块是需要重新编译Nginx,而不是像apache一样配置文件引用.so

1、下载第三方扩展模块nginx-push-stream-module

[root@localhost ~]# mkdir -p /data/module

[root@localhost ~]# cd /data/module/

[root@localhost module]# git clone http://github.com/wandenberg/nginx-push-stream-module.git

Cloning into ‘nginx-push-stream-module’…

remote: Enumerating objects: 3989, done.

remote: Total 3989 (delta 0), reused 0 (delta 0), pack-reused 3989

Receiving objects: 100% (3989/3989), 1.66 MiB | 33.00 KiB/s, done.

Resolving deltas: 100% (3017/3017), done.

2、查看Nginx编译安装时安装了哪些模块

[root@localhost module]# /usr/local/nginx/sbin/nginx -V

nginx version: Nginx

built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)

built with OpenSSL 1.0.2k-fips  26 Jan 2017

TLS SNI support enabled

configure arguments: –prefix=/usr/local/nginx –user=www –group=www –with-http_ssl_module –with-http_stub_status_module –with-ht

tp_gzip_static_module –with-http_flv_module –with-http_mp4_module –add-module=/usr/local/fancyindex –with-pcre

3、下载相同版本的Nginx源码包(以前安装时的源码包),如果已经删除了可重新下载,版本相同即可(这里以1.16.1版本为例)

[root@localhost module]# wget http://nginx.org/download/nginx-1.16.1.tar.gz

4、解压Nginx源码包

[root@localhost module]# tar xf nginx-1.16.1.tar.gz

5、进入Nginx目录

[root@localhost module]# cd nginx-1.16.1

6、新增需要安装的模块,重新编译

[root@JDCloud_Server nginx-1.16.1]# ./configure –prefix=/usr/local/nginx –user=www –group=www –with-http_ssl_module –with-http_stub_status_module –with-http_gzip_static_module –with-http_flv_module –with-http_mp4_module –add-module=/usr/local/fancyindex –with-pcre –add-module=/data/module/nginx-push-stream-module

7、编译Nginx(千万不要make install,不然就真的覆盖了)

[root@localhost nginx-1.16.1]# make

8、替换Nginx二进制文件

[root@localhost nginx-1.16.1]# cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_bak

[root@localhost nginx-1.16.1]# mv objs/nginx /usr/local/nginx/sbin

9、至此Nginx已经安装完毕,可以再执行/usr/local/nginx/sbin/nginx -V查看一下Nginx的模块情况

[root@localhost nginx-1.16.1]# nginx -V

nginx version: nginx/1.16.1

built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)

built with OpenSSL 1.0.2k-fips  26 Jan 2017

TLS SNI support enabled

configure arguments: –prefix=/usr/local/nginx –user=www –group=www –with-http_ssl_module –with-http_stub_status_module –with-http_gzip_static_module –with-http_flv_module –with-http_mp4_module –add-module=/usr/local/fancyindex –with-pcre –add-module=/data/module/nginx-push-stream-module

原创文章,作者:admin,如若转载,请注明出处:https://hostingchat.cn/1103.html

(0)
admin的头像admin
上一篇 2020年4月8日
下一篇 2020年4月13日

相关推荐

  • Nginx参数详解+Rewrite规则

    Nginx参数详解 Nginx常用配置参数有upstream,主要用于均衡后端多个实例: Nginx 的upstream目前支持5种算法分配方式: 轮询(默认rr round ro…

    2018年1月18日
    000
  • Nginx+fancy实现漂亮的索引目录

    ngx-fancyindex模块的简介 Nginx Web 服务器自带的目录浏览功能看起来并不是那么的美观,我们可以使用ngx-fancyindex插件来美化目录浏览功能。 Ngi…

    2018年5月18日
    000
  • Nginx配置使用GeoIP2模块

    一、Nginx简介 Nginx(engine x)是一个免费的、开源的、高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫…

    2023年4月12日
    000
  • Nginx入门简介及安装

    一、Nginx简介 Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问…

    2017年12月14日
    000
  • Nginx日志实时分析利器(Ngxtop)

    Ngxtop实时解析nginx访问日志,并且将处理结果输出到终端,功能类似于系统命令top,所以这个软件起名ngxtop。有了ngxtop,你可以实时了解到当前nginx的访问状况…

    2019年9月12日
    000
  • Nginx启用Status状态页面

    一、Nginx启用Status状态页面 Nginx可以通过with-http_stub_status_module模块来监控Nginx服务器的状态信息。 1、通过nginx -V来…

    2019年7月3日
    000
  • Ubuntu 22.04源码编译安装Nginx

    一、Nginx简介 Nginx(engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量…

    2023年8月9日
    000
  • Nginx和Fancyindex实现索引目录

    一、Nginx简介 ‌Nginx(发音为 “Engine-X”)是一个高性能的Web服务器、反向代理服务器、负载均衡器和HTTP缓存。‌它最初由Igor S…

    2025年1月15日
    000
  • Nginx配置用户名密码访问

    环境信息: 操作系统:CentOS 7.4 IP:192.168.0.111 如果我们 Nginx下搭建了一些站点,但是由于站点内容或者流量的关系,我们并不想让所有人都能正常访问,…

    2019年7月15日
    000
  • Nginx版本升级与降级

    Nginx平滑升级概述 Nginx方便地帮助我们实现了平滑升级。其原理简单概括,就是 在不停掉老进程的情况下,启动新进程。 老进程负责处理仍然没有处理完的请求,但不再接受处理请求。…

    2017年12月19日
    000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注