1. notes
- 本文中
openresty
、git
、node
为随手记录; - 主要搭建
luarocks
环境,测试实现openresty部分功能;
2. luarocks
- lua或luajit安装一个即可
1 2 3 4 5 6 7 8 9 10 11 | wget https: //luarocks .org /releases/luarocks-3 .3.1. tar .gz tar -zxpf luarocks-3.3.1. tar .gz luarocks -h luarocks list luarocks install luafilesystem # 还可以指定你安装的包的存放路径 luarocks install package --tree=path |
3. lua – luarocks
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | yum install -y readline-devel # 系统原有lua,通过以下命令查看版本 lua - v # 安装同版本或稳定版本 wget http: //www .lua.org /ftp/lua-5 .1.4. tar .gz tar -zxvf lua-5.1.4. tar .gz # make linux test cd lua-5.1.4 echo "INSTALL_TOP= /usr/local/lua_5.1.4" >> Makefile make linux && make install cd luarocks-3.3.1 # lua - configure . /configure --prefix= /usr/local/luarocks_3 .3.1 --with-lua= /usr/local/lua_5 .1.4 --with-lua-include= /usr/local/lua_5 .1.4 /include/ make && make install # lua require('cjson') luarocks install lua-cjson # Maybe Globals Env Note Settings export LUALOCKS_HOME= /usr/local/luarocks_3 .3.1 export LUA_HOME= /usr/local/lua_5 .1.4 export LUA_PATH= "$LUALOCKS_HOME/share/lua/5.1/?.lua;?.lua;;" export LUA_CPATH= "$LUALOCKS_HOME/lib/lua/5.1/?.so;?.so;;" export PATH = $PATH:$HOME /bin :$LUALOCKS_HOME /bin :$LUA_HOME /bin |
4. luajit – luarocks
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | cd luarocks-3.3.1 # luajit - configure . /configure --prefix= /usr/local/luajit/ --with-lua= /usr/local/luajit/ --lua-suffix=jit --with-lua-include= /usr/local/luajit/include/luajit-2 .0 --rocks-tree= /usr/local/ # --prefix 设定 luarocks 的安装目录 # --with-lua 则是系统中安装的 lua 的根目录 # --lua-suffix 版本后缀,此处因为openresyt的lua解释器使用的是 luajit, 所以此处得写 jit # --with-lua-include 设置 lua 引入一些头文件头文件的目录 make && make install vim ~/.bashrc export LUAJIT_LIB= /usr/local/luajit/lib export LUAJIT_INC=$LUAJIT_LIB /include/luajit-2 .0 ln -s /usr/local/bin/luarocks /usr/bin/luarocks # 删除软连接 # rm /usr/bin/luarocks # luajit require('cjson') luarocks install lua-cjson |
5. openresty
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | # Yum Install yum-config-manager --add-repo https: //openresty .org /package/centos/openresty .repo yum install -y openresty # Or 编译安装 wget https: //openresty .org /download/openresty-1 .19.3.1. tar .gz tar -zxvf openresty-1.19.3.1. tar .gz # 下载所需插件,如下示例 wget http: //labs .frickle.com /files/ngx_cache_purge-2 .3. tar .gz tar -zxvf ngx_cache_purge-2.3. tar .gz # 解压缓存插件, /usr/local/src/ngx_cache_purge-2.3 # 编译 OpenResty . /configure --prefix= /usr/local/openresty --with-luajit --without- http_redis2_module --with-http_stub_status_module --with-http_v2_module --with- http_gzip_static_module --with-http_sub_module --add-module= /usr/local/src/ngx_cache_purge-2 .3 # 配置缓存插件的源码路径 # 安装 OpenResty gmake && gmake install cd luarocks-3.3.1 # luajit - configure, --prefix 为 OpenResty --prefix - luajit . /configure --prefix= /usr/local/openresty/luajit --with-lua= /usr/local/openresty/luajit/ --lua-suffix=jit --with-lua-include= /usr/local/openresty/luajit/include/luajit-2 .1 make sudo make install |
6. git
1 | yum -y install git |
7. node
1 2 | wget https: //nodejs .org /dist/v16 .19.1 /node-v16 .19.1-linux-x64. tar .xz tar -C /usr/local --strip-components 1 -xJf node-v16.19.1-linux-x64. tar .xz |
8. openresty conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | . /configure --prefix= /usr/local/openresty/nginx --with-cc-opt= '-O2 -DNGX_LUA_ABORT_AT_PANIC -I/usr/local/openresty/zlib/include -I/usr/local/openresty/pcre/include -I/usr/local/openresty/openssl111/include' --with-ld-opt= '-Wl,-rpath,/usr/local/openresty/luajit/lib -L/usr/local/openresty/zlib/lib -L/usr/local/openresty/pcre/lib -L/usr/local/openresty/openssl111/lib -Wl,-rpath,/usr/local/openresty/zlib/lib:/usr/local/openresty/pcre/lib:/usr/local/openresty/openssl111/lib' --with-cc= 'ccache gcc -fdiagnostics-color=always' --with-pcre-jit --with-stream --with-stream_ssl_module - -with-stream_ssl_preread_module --with-http_v2_module --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module --with-http_stub_status_module --with-http_realip_module --with-http_addition_module --with-http_auth_request_module --with-http_secure_link_module --with-http_random_index_module --with-http_gzip_static_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-threads --with-compat --with-stream --with-http_ssl_module --add-module=.. /ngx_devel_kit-0 .3.1 --add-module=.. /echo-nginx-module-0 .62 --add-module=.. /xss-nginx-module-0 .06 --add-module=.. /ngx_coolkit-0 .2 --add-module=.. /set-misc-nginx-module-0 .33 --add-module=.. /form-input-nginx-module-0 .12 --add-module=.. /encrypted-session-nginx-module-0 .09 --add-module=.. /srcache-nginx-module-0 .32 --add-module=.. /ngx_lua-0 .10.21 --add-module=.. /ngx_lua_upstream-0 .07 --add-module=.. /headers-more-nginx-module-0 .33 --add-module=.. /array-var-nginx-module-0 .05 --add-module=.. /memc-nginx-module-0 .19 --add-module=.. /redis2-nginx-module-0 .15 --add-module=.. /redis-nginx-module-0 .3.9 --add-module=.. /ngx_stream_lua-0 .0.11 |
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。