一.简介与思路

当前适用于nginx已经在安装过了,如果没安装过,直接在编译时候添加模块即可。

Nginx主要程序就是nginx这个二进制脚本,只要在编译一个nginx脚本替换掉原来的即可。当前操作是添加echo这个模块。

二.环境准备

系统:centos7.3一台

软件版本:1.8.0

部署目录:/usr/local/nginx

三.安装

1.echo模块可以输出文字,下载解压即可

[root@nginx ~]# wget https://github.com/openresty/echo-nginx-module/archive/v0.60.tar.gz

tar xf v0.60.tar.gz

建立一个模块仓库,因为添加模块后,那个文件夹要位置固定,不能删除的

[root@nginx ~]# mkdir /usr/local/nginx/module

[root@nginx ~]# mv echo-nginx-module-0.60 /usr/local/nginx/module/

2.查询当前nginx编译模块

[root@nginx ~]# nginx -V

3.找到nginx源码包目录,将原来的都填写上,最后--add-module是添加模块,指定模块文件夹位置即可

[root@nginx ~]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_spdy_module --with-http_stub_status_module --with-pcre --add-module=/usr/local/nginx/module/echo-nginx-module-0.60/

4.编译,不要install,不然覆盖了,注意看状态,最后没有error就行了

[root@nginx ~]# make

5.替换

make后将在当前nginx源码文件夹下有个objs文件夹,里面有个nginx这个文件,这个就是nginx -V时用的命令

备份命令

[root@nginx ~]# cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

替换掉

[root@nginx ~]# cp objs/nginx /usr/local/nginx/sbin

四.使用验证

进到脚本目录

[root@nginx ~]# cd /usr/local/nginx/sbin

检查配置文件是否显示ok

[root@nginx ~]# nginx -t

重新加载配置

[root@nginx ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

重新加载

[root@nginx ~]# nginx -s reload

检查是否编译进去,和原来的做对比。

[root@nginx ~]# nginx -V

Nginx编译添加新模块的更多相关文章

  1. 线上nginx 平滑添加新模块;如(--with-http_realip_module)

    nginx 添加模块1.查看当前nginx信息(配置文件路径,启动用户...) ps aux | grep nginx 2.查看当前nginx已启用的模块(记录模块信息,安装路径)./nginx -V ...

  2. nginx编译安装新模块

    nginx的模块是需要重新编译nginx,而不是像apache一样配置文件引用.so 这里以安装第三方ngx_http_google_filter_module模块为例 下载第三方扩展模块ngx_ht ...

  3. Nginx重新编译添加新模块

    找到nginx的安装包目录,如果没有的话去官网重新下载 查看ngixn版本极其编译参数 /usr/local/nginx/sbin/nginx -V 进入nginx源码目录,重新设置nginx ./c ...

  4. 编译nginx平滑添加stream模块

    1.操作背景 操作系统版本:CentOS Linux release (Core) nginx版本:1.13.4 nginx从1.9.0版本开始,新增了ngx_stream_core_module模块 ...

  5. nginx使用热部署添加新模块

    简介 当初次编译安装nginx时,http_ssl_module 模块默认是不编译进nginx的二进制文件当中,如果需要添加 ssl 证书.也就是使用 https协议.那么则需要添加 http_ssl ...

  6. 已经编译安装的nginx/tenginx编译增加新模块

    只适用于自行编译安装的nginx配置 业务变更带来的Nginx增加模块需求 由于业务从php转为go开发,需要用到Http2的协议.这种协议在Nginx上需要http_v2_module这个模块的支持 ...

  7. Nginx编译安装第三方模块http_substitutions_filter_module2222

    Nginx编译安装第三方模块http_substitutions_filter_module Rming -- 阅读 安装 Http 编译 module filter nginx 模块 >> ...

  8. Nginx编译安装第三方模块http_substitutions_filter_module

    Nginx编译安装第三方模块http_substitutions_filter_module 分类:服务器技术  作者:rming  时间:-- . >>ngx_http_substitu ...

  9. thinkPHP5 添加新模块

    1. 修改build.php文件 , 添加新模块 2. cmd 运行命令 php think build --config build.php

随机推荐

  1. RabbitMQ Network Partitions 处理策略

    欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 网络分区的意义 RabbitMQ的模型 ...

  2. [hdu6973]Bookshop

    将询问拆成$x$​到$lca$​和$lca$​($lca$​靠近$y$​的儿子)到$y$​​两部分,分别处理(后者以前者的答案为基础) 两者是类似地,不妨仅考虑前者:用树剖将该询问拆成dfs序上若干个 ...

  3. [hdu6715]算术

    首先要知道一个式子:$\mu(lcm(i,j))=\mu(i)\cdot \mu(j)\cdot \mu(gcd(i,j))$(分是否为0讨论)令$d=gcd(i,j)$,$n'=\lfloor n/ ...

  4. SpringMVC---Json的使用

    1.所需文件 2.pom中加入json <?xml version="1.0" encoding="UTF-8"?> <web-app xml ...

  5. java8特性表达式

    public static void main(String[] args) { JFrame jframe = new JFrame("My JFrame"); JButton ...

  6. 从ApacheTomcat架构谈面试到源码编译环境v10.0.12

    概述 开启博客分享已近三个月,感谢所有花时间精力和小编一路学习和成长的伙伴们,有你们的支持,我们继续再接再厉 **本人博客网站 **IT小神 www.itxiaoshen.com 定义 Tomcat官 ...

  7. [R] ignore.case区分大小写参数

    字符串操作的函数(如contains),很多都包含ignore.case参数,默认是T,即不分大小写,稍不注意就会掉坑里,最好的习惯是下意识地加入这个参数. 举个例子: 我要选择An的列,就用下面这个 ...

  8. MYSQL5.8----M3

    333333333333333333333333333 mysql> DESC user; +----------+---------------------+------+-----+---- ...

  9. MYSQL5.8----M4-5

    mysql> CREATE TABLE joson( id INT AUTO_INCREMENT PRIMARY KEY, context JSON NOT NULL)// Query OK, ...

  10. 【Python小试】将核酸序列翻译成氨基酸序列

    三联密码表 gencode = { 'ATA':'I', 'ATC':'I', 'ATT':'I', 'ATG':'M', 'ACA':'T', 'ACC':'T', 'ACG':'T', 'ACT' ...