欢迎光临
我们一直在努力

Nginx安装Lua支持

建站超值云服务器,限时71元/月

Nginx 支持 Lua 需要安装 lua-nginx-module 模块,一般常用有 2 种方法:

1、编译 Nginx 的时候带上 lua-nginx-module 模块一起编译

2、使用 OpenResty: Nginx + 一些模块,默认启用了 Lua 支持

OpenResty

OpenResty 的安装很方便,Mac 里使用 brew 安装,对于一些常见的 Linux 发行版本,OpenResty® 提供
官方预编译包,CentOS 使用 yum,Ubuntu 使用 apt-get,具体请参考
https://openresty.org/cn/installation.html,以下以 Mac 和 CentOS 7 中安装 OpenResty
为例。

Mac 使用 OpenResty

一、终端执行 brew install homebrew/nginx/openresty 把 OpenResty 安装到
/usr/local/Cellar/openresty/

二、终端执行 openresty -V 可以从输出信息中发现 Nginx 的配置文件为
/usr/local/etc/openresty/nginx.conf

三、启动 Nginx,2 种启动方式都可以

sudo openresty (openresty 其实就是 nginx 的软连接)

sudo nginx (把 /usr/local/Cellar/openresty/1.11.2.5/nginx/sbin 添加到 PATH
里,注意不同版本时的路径不同)

查看是否启动了 nginx: ps -ef | grep nginx

四、测试是否支持 Lua

1、/usr/local/etc/openresty/nginx.conf 中添加

location /lua {
default_type 'text/html';
content_by_lua 'ngx.say("hello world");';
}

2、nginx -t 测试配置没问题,然后 nginx -s reload 重新加载配置 (nginx -s stop 关闭 Nginx)

3、curl http://localhost/lua 输出 hello world 则说明 Nginx 支持 Lua

CentOS 7 使用 OpenResty

1、终端执行下面 3 条命令把 OpenResty 安装到 /usr/local/openresty

sudo yum install yum-utils
sudo yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo
sudo yum install openresty

2、Nginx 的配置文件位于 /usr/local/openresty/nginx/conf/nginx.conf (openresty -V
中没有指定)

3、启动 Nginx,2 种启动方式都可以

sudo openresty

sudo nginx/

4、查看是否启动了 nginx: ps -ef | grep nginx

4、测试是否支持 Lua: 参考上面的方法

编译 Nginx + Lua

编译 Nginx 需要先准备好下面的这些工具,如果不确定是否已安装,可以在编译的时候根据出现的错误提示再进行安装:

yum install -y gcc g++ gcc-c++

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

Nginx 支持 Lua 需要依赖
LuaJIT-2.0.4.tar.gz,ngx_devel_kit,lua-nginx-module,下面介绍具体的编译过程 (都下载到 /root
目录)

1、下载安装 LuaJIT-2.0.4.tar.gz

wget -c http://luajit.org/download/LuaJIT-2.0.4.tar.gz
tar xzvf LuaJIT-2.0.4.tar.gz
cd LuaJIT-2.0.4
make install PREFIX=/usr/local/luajit
# 添加环境变量
export LUAJIT_LIB=/usr/local/luajit/lib
export LUAJIT_INC=/usr/local/luajit/include/luajit-2.0

2、下载解压 ngx_devel_kit

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

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

4、下载安装 nginx-1.10.3.tar.gz

wget http://nginx.org/download/nginx-1.10.3.tar.gz
tar -xzvf nginx-1.10.3.tar.gz
cd nginx-1.10.3
# 注意ngx_devel_kit和lua-nginx-module 以实际解压路径为准
./configure --add-module=/root/ngx_devel_kit-0.3.0 --add-module=/root/lua-nginx-module-0.10.8
make -j2
make install

5、支持 Nginx 被安装到了 /usr/local/nginx,配置文件为 /usr/local/nginx/conf/nginx.conf

6、验证

将 nginx 做成命令: ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

/usr/local/nginx/conf/nginx.conf 中添加 Lua 测试代码

location /lua {
default_type 'text/html';
content_by_lua 'ngx.say("hello world");';
}

启动 Nginx: sudo nginx

curl http://localhost/lua 输出 hello world 则说明 Nginx 支持 Lua。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » Nginx安装Lua支持
分享到: 更多 (0)