http://www.orzace.com/how-to-upgrade-nginx/

下面是nginx替换成tengine再加上lua 模块,(tengine-2.0.1版本暂时无法动态加载lua模块,只能编译加载)

安装系统所需web软件

1.下载luajit,官网 http://luajit.org/ 
    wget http://luajit.org/download/LuaJIT-2.0.1.tar.gz 
    tar xzvf LuaJIT-2.0.1.tar.gz 
    cd LuaJIT-2.0.1 
     make PREFIX=/usr/local/LuaJIT-2.0.1 
     make install PREFIX=/usr/local/LuaJIT-2.0.1

2、yum  install  pcre-devel -y

3、/etc/profile

  1. export LUAJIT_LIB=/usr/local/LuaJIT-2.0.1/lib

  2. export LUAJIT_INC=/usr/local/LuaJIT-2.0.1/include/luajit-2.0

4、tar xzvf tengine-1.5.2.tar.gz 
    cd tengine-1.5.2 
    ./configure --with-ld-opt="-Wl,-rpath,/usr/local/web/LuaJIT-2.0.1/lib" \ 
    --prefix=/usr/local/tengine  --with-http_lua_module \ 
    --with-luajit-inc=/usr/local/LuaJIT-2.0.1/include/luajit-2.0  
    --with-luajit-lib=/usr/local/LuaJIT-2.0.1/lib 
    make -j2 
    make install -j2

5、nginx.conf

  1. location /lua {

  2. default_type 'text/plain';

  3. content_by_lua 'ngx.say("hello, lua")';

  4. }

6、测试

[root@node2 tengine]# curl http://localhost/lua

hello, lua

=====================================================================================

如果是别的模块,只需解压,加载即可

tar xvf ngx_cache_purge-1.5.tar.gz

cd /usr/local/tengine

sbin/dso_tool --add-module=/root/ngx_cache_purge-1.5

more /usr/local/tengine/conf/nginx.conf

dso {

load ngx_http_cache_purge_module.so;

}

sbin/nginx -s relaod

sbin/nginx -m

ngx_http_cache_purge_module (shared, 3.1)

验正即可

本文转自crazy_charles 51CTO博客,原文链接:http://blog.51cto.com/douya/1543399,如需转载请自行联系原作者

nginx平滑升级、在线添加模块(tengine 动态加载模块)的更多相关文章

  1. stevedore动态加载模块

    stevedore动态加载模块,stevedore使用setuptools的entry points来定义并加载插件.entry point引用的是定义在模块中的对象,比如类.函数.实例等,只要在im ...

  2. OrchardCore 如何动态加载模块?

    前言 今天,我们再次讨论下OrchardCore,通过初期调研,我们项目采用OrchardCore底层设施支持模块化,同时根据业务场景,额外还需支持二次开发,于是有了本文,若有不同解决方案,欢迎留言探 ...

  3. Python_getattr+__import__ 实现动态加载模块、类对象或函数

    __import__() 语法 __import__(name[, globals[, locals[, fromlist[, level]]]]) 参数 name -- 字符串,模块的导入路径 说明 ...

  4. [driver]linux内核动态加载模块

    问题: 1. 把编译好的模块放到板子/lib/modules对应文件夹下,并且执行了depmod -a, 比如pl2303.ko, 那么下一次插入pl2303的串口线,是否可以识别,也就是自动加载pl ...

  5. angular-ui-router动态加载模块

    1.定义index.html主页,对于通用的js就不用require依赖加载了,其中main.js作为主模块,用require添加系统路由模块. <!DOCTYPE html> <h ...

  6. AngularJs 动态加载模块和依赖

    最近项目比较忙额,白天要上班,晚上回来还需要做Angular知识点的ppt给同事,毕竟年底要辞职了,项目的后续开发还是需要有人接手的,所以就占用了晚上学习的时间.本来一直不打算写这些第三方插件的学习笔 ...

  7. NGINX的启停命令、以及动态加载配置文件的命令

    -- 启动(不推荐):在nginx目录下有一个sbin目录,sbin目录下有一个nginx可执行程序../nginx -- 启动(指定配置文件,推荐)/usr/local/nginx/sbin/ngi ...

  8. Apache动态加载模块

    添加步骤:如要额外安装cgi,先找到mod_cgi.c及mod_cgid.c.一般在apache安装包目录下,如 ./httpd-2.2.25/modules/generators .#编译安装 cg ...

  9. Python模块的动态加载机制

    Python在运行环境初始化中,就将sys module加载到了内存中, 实际上,Python是将一大批的module加载到了内存中.但是为了使local名字空间能够达到最干净的效果,Python并没 ...

随机推荐

  1. redis 安装and对外开放端口

    第一步: $ cd /usr/local/src $ wget http://download.redis.io/releases/redis-5.0.4.tar.gz $ tar xzf redis ...

  2. Spring Cloud 系列之 Consul 注册中心(一)

    Netflix Eureka 2.X https://github.com/Netflix/eureka/wiki 官方宣告停止开发,但其实对国内的用户影响甚小,一方面国内大都使用的是 Eureka ...

  3. 线程绑定cpu

    #include <stdio.h> #include <pthread.h> #include <sys/sysinfo.h> #include <unis ...

  4. jpa是什么,和hibernate 有什么关系

    JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中.JPA 的目标之一是制定一个可以由很多供应商实现的API,并且开发人员可以编码来实现该API,而不 ...

  5. 第一天 简单的python认证登陆代码

    #!/usr/bin/env python3# -*- coding:utf-8 -*-# name:zzyu welcome = '''-----------welcome to home----- ...

  6. 原生js实现扇形导航以及动画的坑

    第一次发博客,有点紧张.首先来一张效果图. 主要是实现了点击右下角的风扇按钮实现了: 导航栏的开启与关闭,中间伴随着 transition过渡以及transform的2D动画. 上源码: <!D ...

  7. ES5与ES6 this 指向详细解析(箭头函数)

    首先要明白箭头函数的作用: 箭头函数除了让函数的书写变得很简洁,可读性很好外:最大的优点是解决了this执行环境所造成的一些问题.比如:解决了匿名函数this指向的问题(匿名函数的执行环境具有全局性) ...

  8. I - Red and Black DFS

    There is a rectangular room, covered with square tiles. Each tile is colored either red or black. A ...

  9. Crossing River POJ过河问题

    A group of N people wishes to go across a river with only one boat, which can at most carry two pers ...

  10. 【WPF学习】第六十七章 创建自定义面板

    前面两个章节分别介绍了两个自定义控件:自定义的ColorPicker和FlipPanel控件.接下来介绍派生自定义面板以及构建自定义绘图控件. 创建自定义面板是一种特殊但较常见的自定义控件开发子集.前 ...