一.两个依赖包 有yum的直接

yum   yum –y install openssl openssl-devel prce prce-devel zlib zlib-devel

没有yum环境的,可以源码安装:

cd /usr/local

wget https://sourceforge.net/projects/pcre/files/pcre/8.37/pcre-8.37.tar.gz

tar  zxf  pcre-8.37.tar.gz

cd pcre-8.37 && ./configure &&make&&make install

wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz

tar zxf openssl-1.0.1c.tar.gz

cd openssl-1.0.1c.tar.gz &&./config --prefix=/usr/local/openssl -fPIC no-gost no-shared no-zlib

make depend &&make install

wget http://www.zlib.net/zlib-1.2.11.tar.gz

tar zxf zlib-1.2.11.tar.gz

cd /usr/local/zlib-1.2.11 &&./configure

make && make install

二.然后安装LuaJIT

mkdir /usr/local/modules   ###存放所以的第三方模块目录

cd /usr/local/modules

1.wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz

tar -zxvf LuaJIT-2.0.5.tar.gz

cd LuaJIT-2.0.5

make install PREFIX=/usr/local/LuaJIT

最后一行会输出一下提示:

==== Successfully installed LuaJIT 2.0.5 to /usr/local/LuaJIT ====

vi /etc/profile   文件末尾加入环境变量

export LUAJIT_LIB=/usr/local/LuaJIT/lib

export LUAJIT_INC=/usr/local/LuaJIT/include/luajit-2.0

source /etc/profile

ln -s /usr/local/luajit/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2 #不增加这行,nginx启动会报错

2.下载ngx_devel_kit(NDK)模块 :https://github.com/simpl/ngx_devel_kit/tags,不需要安装

wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz

tar -xzvf v0.3.0.tar.gz

3.下载最新的lua-nginx-module 模块 :https://github.com/openresty/lua-nginx-module/tags,不需要安装

wget https://github.com/openresty/lua-nginx-module/archive/v0.10.8.tar.gz

tar -xzvf v0.10.8.tar.gz

三.sticky模块(cookie负载均衡,存在客户端的)

wget https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/master.tar.gz

tar -zxf master.tar.gz

nginx-goodies-nginx-sticky-module-ng-c78b7dd79d0d.tar.gz(这个包是tengine sticky的扩展包)

mv  nginx-goodies-nginx-sticky-module-ng-c78b7dd79d0d/ nginx-sticky

四.tengine安装(nginx也是一样)

tengine-2.1.1.tar.gz

tar zxf tengine-2.1.1.tar.gz

cd  tengine-2.1.1

./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.37 --with-pcre-jit --with-zlib=/usr/local/zlib-1.2.11 --with-openssl=/usr/local/openssl-1.0.1c --with-http_sub_module --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module  --with-http_realip_module --with-http_spdy_module --with-http_gunzip_module --with-http_gzip_static_module --add-module=/usr/local/modules/ngx_devel_kit-0.3.0 --add-module=/usr/local/modules/lua-nginx-module-0.10.8 --add-module=/usr/local/modules/nginx-sticky/

make

make install

安装后:

/usr/local/nginx/sbin/nginx -t   查看状态

/usr/local/nginx/sbin/nginx     启动nginx

在/usr/local/nginx/conf/nginx.conf中加入如下代码:

location /hello_lua { default_type 'text/plain'; content_by_lua 'ngx.say("hello, lua")';
}

重启nginx

访问10.211.55.3/hello_lua会出现”hello, lua”表示lua安装成功

转载于:https://www.cnblogs.com/zhangan/p/10880536.html

Tengine编译安装+lua+sticky模块相关推荐

  1. linux下编译安装ntfs,内核编译安装 (用NTFS模块)

    内核编译安装 (用NTFS模块) 1 rz 下载的 的内核最新文件 在这 https://www.kernel.org/ 2 tar xvf linux-4.12.10.tar.xz 解压文件 内核文 ...

  2. Linux卸载tengine,编译安装Tengine

    1.安装前准备: 1.1下载http://tengine.taobao.org/download_cn.html 1.2 依赖 gcc openssl-devel pcre-devel zlib-de ...

  3. 如何编译 php,如何编译安装一个php模块

    不止一次需要这么做了. 如果你需要的扩展在yum/apt仓库中没有的话,那需要自己编译了. 1. 下载PHP5.2.9的源代码(根据你php的版本选择) 2. 编译模块 进入对应模块的源码目录,然后: ...

  4. tfs 安装mysql.h_如何在centos5或centos7上编译安装tfs rcserver 模块?

    已在docker centos7上成功编译rcserver模块,具体步骤如下: docker run -ti tfs:latest /bin/bash 1.进入到rcserver模块目录 cd /mn ...

  5. nginx 编译安装及增加模块

    一,安装依赖 yum -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel path 二,下载ngi ...

  6. Tengine编译安装config项目清单

    2019独角兽企业重金招聘Python工程师标准>>> --help print this message--prefix=PATH set installation prefix- ...

  7. Linux编译安装 php soap模块

    环境 CentOS6.3 PHP5.4.22 1. 下载对应版本的php源码包,解压 例如  /tmp/php-5.4.22 2. 在解压后的目录执行 ./configure --enable-soa ...

  8. mysql 安装dso命令_使用tengine DSO 来动态编译安装第三方模块(Lua

    在使用nginx时,需要增加或者改动一个模块,都需要重新编译nginx文件.最近使用了tengine,它提供的DSO工具来动态加载模块.本例测试需要动态增加lua-nginx模块,记录一下安装过程. ...

  9. 两个php的build文件,PHP编译安装中遇到的两个错误和解决方法

    一.PHP configure: error: Cannot find ldap libraries in /usr/lib 今天在CentOS 64位下编译安装PHP5.4.8.结果在configu ...

  10. yum安装与源码编译安装实际使用区别

    总结一些我实际生产使用的区别: 1.yum安装不是说不行,都行,各有千秋. 2.yum安装目录不集中,但基本遵循Linux文件夹的作用去划分文件,比如配置文件通常在/etc下. 3.yum安装说的模块 ...

最新文章

  1. BZOJ3246 IOI2013Dreaming
  2. JavaScript内置一些方法的实现原理--new关键字,call/apply/bind方法--前戏
  3. 文巾解题 12. 整数转罗马数字
  4. 第一周——数据分析之表示 —— Numpy入门
  5. C#委托(匿名函数)的各种变形写法
  6. EF Core:一统SQL和NoSQL数据库
  7. nginx php exec,PHP Web 端如何操作 Nginx 配置
  8. 58个PPT下载丨2019 PostgreSQL中国技术大会资源放送
  9. 逍遥安卓linux版,逍遥安卓5.1.1内测版下载
  10. 动手做webserver的核心之http解析
  11. JavaScript 怎么合并两个JSON,并覆盖重复键
  12. G2 可视化引擎-统计图表
  13. java 水仙花数问题(java50道经典编程题)
  14. python常用正则表达式大全_最全的常用正则表达式大全
  15. 详细的组态王软件与200 Smart PLC网口通信教程
  16. 台式计算机配置清单及价格,电脑主机配置清单及价格(台式组装机电脑配置清单)...
  17. 问题:IndentationError: unindent does not match any outer indentation level
  18. 利用seven 7zip的API来进行压缩和解压文件夹
  19. JAVA兔子繁衍_Java 编程经典案例之兔子繁殖迭代问题
  20. 【SpringMVC】@RequestMapping和@GetMapping的区别

热门文章

  1. wordpress 通过域名无法访问_使用WordPress搭建自己的内容发布平台
  2. 总结XMLHttpRequest对象
  3. [渝粤教育] 泉州师范学院 弦管传奇 古乐南音 参考 资料
  4. 【渝粤题库】陕西师范大学800006 世界地理
  5. @font-face 字体图标的应用
  6. spring集成mybatis后怎么在控制台打印sql语句
  7. 海豚浏览器历年笔试题
  8. new对象时,类名后加括号与不加括号的区别
  9. android dialog转layout
  10. ubuntu samba