Lua OpenResty 开发环境搭建

1. 创建目录/usr/servers,以后我们把所有软件安装在此目录

1
2
3
mkdir -p /usr/servers
cd /usr/servers/
ls

2.下载openresty-1.13.6.2.tar.gz并解压

1
2
3
wget https://openresty.org/download/openresty-1.13.6.2.tar.gz
tar -zxvf openresty-1.13.6.2.tar.gz
cd openresty-1.13.6.2/bundle/

3. 安装LuaJIT

1
2
3
cd LuaJIT-2.1-20180420/
ls
make clean && make && make install

4. 下载ngx_cache_purge模块,该模块用于清理nginx缓存

1
2
3
cd /usr/servers/openresty-1.13.6.2/bundle/
wget https://github.com/FRiCKLE/ngx_cache_purge/archive/2.3.tar.gz
tar -xvf 2.3.tar.gz

5. 下载nginx_upstream_check_module模块,该模块用于ustream健康检查

1
2
3
4
cd /usr/servers/ngx_openresty-1.7.7.2/bundle
cd /usr/servers/openresty-1.13.6.2/bundle/
wget https://github.com/yaoweibin/nginx_upstream_check_module/archive/v0.3.0.tar.gz
tar -xvf v0.3.0.tar.gz

6. 安装 openresty

1
2
3
4
yum install openssl-devel pcre-devel zlib-devel -y
cd /usr/servers/openresty-1.13.6.2/
./configure --prefix=/usr/servers --with-http_realip_module --with-pcre --with-luajit --add-module=./bundle/ngx_cache_purge-2.3/ --add-module=./bundle/nginx_upstream_check_module-0.3.0/ -j2
make && make install

7. 目录说明

/usr/servers/luajit :luajit环境,luajit类似于java的jit,即即时编译,lua是一种解释语言,通过luajit可以即时编译lua代码到机器代码,得到很好的性能;
/usr/servers/lualib:要使用的lua库,里边提供了一些默认的lua库,如redis,json库等,也可以把一些自己开发的或第三方的放在这;
/usr/servers/nginx :安装的nginx;

8. 启动nginx

/usr/servers/nginx/sbin/nginx

9. 配置环境

  1. 编辑nginx.conf配置文件
    1
    vim /usr/servers/nginx/conf/nginx.conf
  1. 在http部分添加如下配置
    1
    2
    3
    #lua模块路径,多个之间”;”分隔,其中”;;”表示默认搜索路径,默认到/usr/servers/nginx下找
    lua_package_path "/usr/servers/lualib/?.lua;;"; #lua 模块
    lua_package_cpath "/usr/servers/lualib/?.so;;"; #c模块
  1. 为了方便开发我们在/usr/servers/nginx/conf目录下创建一个lua.conf
    1
    2
    3
    4
    5
    #lua.conf
    server {
    listen 80;
    server_name _;
    }
  1. 在nginx.conf中的http部分添加include lua.conf包含此文件片段
    1
    include lua.conf;
  1. 测试是否正常
    1
    /usr/servers/nginx/sbin/nginx -t