nginx 配置lua执行shell脚本

1.需要nginx安装lua_nginx_module模块,这一步安装时,遇到一个坑,nginx执行configure时,一直提示./configure: error: unsupported LuaJIT version; ngx_http_lua_module requires LuaJIT 2.x。

网上一堆方法都试了,都还是这样的提示;后来判断是luajit的版本可能不兼容(刚开始下载的是2.1的版本),又重新下载了luajit2.0的版本,该问题解决。

通过git下载了2.0的luaji版本:

git clone -b v2.0.0 GitHub - openresty/luajit2: OpenResty's Branch of LuaJIT 2

2.在nginx配置中增加:

location /exec/processShell {

default_type text/html;

content_by_lua '

local handle = io.popen("/home/xxx/xxx.sh")

local result = handle:read("*all")

handle:close()

ngx.say(result)

';

}

xxx.sh内容:

/home/xxx/jdk-11.0.2/bin/java -jar /home/xxxx/xxxx.jar > /home/xxx/xg.log &

echo "xxxx sucess"

3.在浏览器地址栏里录入:http://xxxx/exec/processShell后,浏览器显示:xxxx sucess;表示配置和执行成功;

相关推荐
还是大剑师兰特20 小时前
解决nginx错误:http://localhost:7000正常,http://localhost:7000/map 报错404
nginx·大剑师
xing-xing1 天前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
PC2005-cloud1 天前
Nginx 防盗链配置实战:用 referer 模块保护网站静态资源
nginx
PHP实战开发录1 天前
Nginx上传大文件为什么报413
nginx·php·开发
Lsetea2 天前
Nginx报No required SSL certificate was sent:mTLS客户端证书排查
运维·nginx·https·ssl·openssl
szephyr3 天前
HTTPS 证书申请与自动续期:acme.sh + Let‘s Encrypt 完整记录
nginx·https·acme.sh·证书续期
liulilittle3 天前
麻将结算全链路语义(SETTLE_SEMANTICS)
ai·自动化·llm·mock·lua·测试
liulilittle3 天前
麻将服务器崩溃补偿与异常处理语义(CRASH_SEMANTICS)
ai·自动化·llm·mock·lua·测试·tools
liulilittle3 天前
麻将 UI 层可观察行为(UI_BEHAVIOR)
ai·自动化·llm·mock·lua·测试·tools
Lsetea3 天前
部署证书后提示“证书名称与输入不匹配”:Safari 报错的三层排查
nginx·https·safari·ssl证书·openssl