tengine+lua 安装及问题解决

1 篇文章 0 订阅
1 篇文章 0 订阅

一、tengine+lua集成安装

1.首先安装pcre、openssl

2.修改tengine安装包中 tengine-2.2.2/auto/lib/openssl/conf文件中的openssl路径,配置文件中路径包含/.openssl/,如usr/local/opt/openssl/.openssl/include/openssl/ssl.h,实际路径中不包含

--3./configure --prefix=tengine要安装到的目录 --with-pcre=pcre的安装包目录  --with-openssl=/usr/local/opt/openssl

具体安装步骤:

3.先安装1、2条nginx安装前置依赖

4.安装luajit

下载luajit安装包,执行命令 :make && make install

5.下载luamodule: ngx_devel_kit 、nginx_lua_module

6.安装tengine

# tell nginx's build system where to find LuaJIT 2.1:

export LUAJIT_LIB=/usr/local/lib

export LUAJIT_INC=/usr/local/include/luajit-2.1

# Here we assume Nginx is to be installed under /work/program/tengine

./configure --prefix=/work/program/tengine --with-pcre=/work/soft/pcre-8.38 --with-openssl=/usr/local/opt/openssl --with-ld-opt=-Wl,-rpath,/usr/local/lib --add-module=/work/program/lua-nginx-module-master --add-module=/work/program/ngx_devel_kit-master

sudo make -j2

sudo make install

7.安装lua-cjson

修改Makefile 文件内容,否则(mac下)会出现错误 Undefined symbols for architecture x86_64:

原:CJSON_LDFLAGS =     -shared
改:CJSON_LDFLAGS =     -bundle -undefined dynamic_lookup
这里就是OSX和Unix的区别,bundle是Mac使用的文件格式,如果不使用这些选项,可能引起“multiple lua vms detected”错误

LUA_INCLUDE_DIR = $(PREFIX)/include/luajit-2.0

注释掉
FPCONV_OBJS =       fpconv.o 

添加:
FPCONV_OBJS =       g_fmt.o dtoa.o
CJSON_CFLAGS +=     -DUSE_INTERNAL_FPCONV
CJSON_CFLAGS +=     -DIEEE_BIG_ENDIAN
CJSON_CFLAGS +=     -pthread -DMULTIPLE_THREADS 

执行命令:make && make install

 

 

安装luamodule:ngx_devel_kit 、nginx_lua_module

具体查看tengine 动态语言支持lua:https://github.com/alibaba/tengine/blob/master/modules/ngx_http_lua_module/README.markdown4.sudo make

 

二、request: "GET /favicon.ico HTTP/1.1"

favicon.ico 文件是浏览器收藏网址时显示的图标,当第一次访问页面时,浏览器会自动发起请求获取页面的favicon.ico文件。

nginx可以配置个该文件访问路径,也可以nginx配置忽略favicon.ico日志

location = /favicon.ico { log_not_found off; access_log off; }

 

三、ffi引用的相关问题

引用最新版的lua-resty-core

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值