将其他LUA模块安装到Redis中

前端之家收集整理的这篇文章主要介绍了将其他LUA模块安装到Redis中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试让Redis允许EVAL( http://redis.io/commands/EVAL)发出HTTP请求.

两个模块:LuaCURL和Luasocket提供此功能. Redis源代码有一个带有附加模块的目录(例如cjson)http://download.redis.io/redis-stable/deps/lua/src/,我尝试添加luacurl.c但是我收到错误后收到错误.我已经设法编译它启用os.execute – 通过编辑scripting.c – 它允许我运行curl命令,但这是一个糟糕的解决方案.

如何在Redis的Lua中编译HTTP请求?

大概最简单的方法就是拥有一个独立的luasocket.so文件,但我不知道该怎么做.

解决方法

不用担心,我所需要的只是睡一觉才能有一个清醒的头脑.

我下载了http://files.luaforge.net/releases/luacurl/luacurl并将luacurl.c移动到/ deps / lua / src /文件夹并从第23行编辑

#include <lauxlib.h>

#include "lauxlib.h"

然后在/ deps / lua / src / Makefile(Lua的makefile,而不是Redis的)转到第30行并找到

lua_cjson.o

在它旁边添加“luacurl.o”就像这样

lua_cjson.o luacurl.o

然后在/ src / Makefile(Redis的makefile,而不是Lua的)中更改第54行

FINAL_LIBS=-lm

FINAL_LIBS=-lm -lcurl

最后,确保已安装“yum install curl-devel”然后进行编译.

请记住,在服务器忙于使用Lua脚本时,没有其他客户端可以执行命令.

原文链接:https://www.f2er.com/lua/274603.html

猜你在找的Lua相关文章