博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Nginx安装lua-nginx-module模块
阅读量:7238 次
发布时间:2019-06-29

本文共 4340 字,大约阅读时间需要 14 分钟。

lua-nginx-module模块地址

https://github.com/openresty/lua-nginx-module

It is highly recommended to use  which integrate Nginx, ngx_lua, LuaJIT 2.1, as well as other powerful companion Nginx modules and Lua libraries. It is discouraged to build this module with nginx yourself since it is tricky to set up exactly right. Also, the stock nginx cores have various limitations and long standing bugs that can make some of this modules' features become disabled, not work properly, or run slower. The same applies to LuaJIT as well. OpenResty includes its own version of LuaJIT which gets specifically optimized and enhanced for the OpenResty environment.

如果不听人家的建议,可以按照下面安装

Alternatively, ngx_lua can be manually compiled into Nginx:

  1. Install LuaJIT 2.0 or 2.1 (recommended) or Lua 5.1 (Lua 5.2 is not supported yet). LuaJIT can be downloaded from the  and Lua 5.1, from the . Some distribution package managers also distribute LuaJIT and/or Lua.
  2. Download the latest version of the ngx_devel_kit (NDK) module .
  3. Download the latest version of ngx_lua .
  4. Download the latest version of Nginx  (See )

Build the source with this module:

wget 'http://nginx.org/download/nginx-1.13.6.tar.gz' tar -xzvf nginx-1.13.6.tar.gz cd nginx-1.13.6/ # tell nginx's build system where to find LuaJIT 2.0: export LUAJIT_LIB=/path/to/luajit/lib export LUAJIT_INC=/path/to/luajit/include/luajit-2.0 # tell nginx's build system where to find LuaJIT 2.1: export LUAJIT_LIB=/path/to/luajit/lib export LUAJIT_INC=/path/to/luajit/include/luajit-2.1 # or tell where to find Lua if using Lua instead: #export LUA_LIB=/path/to/lua/lib #export LUA_INC=/path/to/lua/include # Here we assume Nginx is to be installed under /opt/nginx/. ./configure --prefix=/opt/nginx \ --with-ld-opt="-Wl,-rpath,/path/to/luajit-or-lua/lib" \ --add-module=/path/to/ngx_devel_kit \ --add-module=/path/to/lua-nginx-module # Note that you may also want to add `./configure` options which are used in your # current nginx build. # You can get usually those options using command nginx -V # you can change the parallism number 2 below to fit the number of spare CPU cores in your # machine. make -j2 make install 英文不好的可以参考下文

ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本

特性很牛叉,可自行百度查看,这里主要是示范一下,如何在Nginx下安装lua-nginx-module模块

当然,如果你之前没有安装过Nginx,而且嫌安装麻烦,可直接下载openresty安装简单快捷,(阿里的大牛章亦春的作品,膜拜~~~)

1.下载安装LuaJIT 2.1(2.0或者2.1都是支持的,官方推荐2.1):

cd /usr/local/srcwget http://luajit.org/download/LuaJIT-2.1.0-beta2.tar.gztar zxf LuaJIT-2.1.0-beta2.tar.gz cd LuaJIT-2.1.0-beta2 make PREFIX=/usr/local/luajit make install PREFIX=/usr/local/luajit

 

2.下载ngx_devel_kit(NDK)模块 :,不需要安装

cd /usr/local/srcwget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz tar -xzvf v0.2.19.tar.gz

3.下载最新的lua-nginx-module 模块 :,不需要安装

cd /usr/local/srcwget https://github.com/openresty/lua-nginx-module/archive/v0.10.2.tar.gz tar -xzvf v0.10.2.tar.gz

 

4.nginx -V查看已经编译的配置

nginx -V

笔者的配置如下:

--prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.0.2h --with-pcre=../pcre-8.38 --with-pcre-jit --with-ld-opt=-ljemalloc --with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib --add-module=/usr/local/src/ngx_devel_kit-0.2.19 --add-module=/usr/local/src/lua-nginx-module-0.10.2

 

5.进入之前安装nginx的解压目录,重新编译安装(在nginx -V得到的配置下,加入ngx_devel_kit-0.2.19和ua-nginx-module-0.10.2的目录),最终的配置如下:

设置环境变量

export LUAJIT_LIB=/usr/local/luajit/libexport LUAJIT_INC=/usr/local/luajit/include/luajit-2.1

 

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.0.2h --with-pcre=../pcre-8.38 --with-pcre-jit --with-ld-opt='-ljemalloc' --with-ld-opt="-Wl,-rpath,/usr/local/luajit/lib" --add-module=/usr/local/src/ngx_devel_kit-0.2.19 --add-module=/usr/local/src/lua-nginx-module-0.10.2

 

6.编译安装

make -j2make install

 

7.查看是否编译成功

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

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

 

重启nginx:

service nginx restart

 

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

hello, lua

转载地址:http://xrrfm.baihongyu.com/

你可能感兴趣的文章
html5 canvas全屏烟花动画特效
查看>>
MySQL使用SQL实现Oracle Rank函数功能
查看>>
博客搬家
查看>>
xin域名公仔2017版
查看>>
StickyListHeaders的使用
查看>>
云服务器ECS,你真的懂吗?
查看>>
ORA-2330 ORA-01403: no data found
查看>>
学习ssh之ssh密钥随身携带
查看>>
HBA详解(原创)
查看>>
java集合框架02——Collection架构与源码分析
查看>>
怎样检查svn启动没有
查看>>
理解Nodejs的Event Loop
查看>>
Html Table 合并单元格
查看>>
第七章_标签文件
查看>>
阿里巴巴CTO张建锋:大数据+计算+算法才是未来
查看>>
hibernate中一级缓存和二级缓存
查看>>
【转载】架构师的行为准则(一)
查看>>
RMI,RPC,SOAP对比分析
查看>>
json解析,异步下载(listview仅滑动时加载)Demo总结
查看>>
浅谈12306核心模型设计思路和架构设计
查看>>