上回在安装nginx+lua时过程中,在执行./configure命令时提示错误: error: ngx_http_lua_module requires the Lua library,而我确实已经安装luajit(LuaJIT:LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language. lua的高效率版本)。在执行.configure时也导入了export LUAJIT_LIB和export LUAJIT_INC的目录路径。如下:
export LUAJIT_LIB=/opt/modules/luajit/lib
export LUAJIT_INC=/opt/modules/luajit/include/luajit-2.0
最后找到解决办法:先安装lua-devel。可使用命令:
yum install lua-devel
如果不想在执行期间再输入y的话,可直接使用yum install lua-devel -y (-y:自动回答yes.--nogpgcheck:不验证)
lua-devel:Development files for lua,即是lua的开发包,在centos里很多时候都需要安装这么一个开发包的东西:*-devel,记得之前安装过一个python-devel。与此有类似。
如果make的时候出现ngx_http_lua_socket_udp.h:34: 错误:expected specifier-qualifi。可尝试换个lua-nginx-module版本进行编译。
上回在安装nginx+lua时过程中,在执行./configure命令时提示错误: error: ngx_http_lua_module requires the Lua library,而我确实已经安装luajit(LuaJIT:LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language. lua的高...
***今天
安装
nginx
模块
时
一直出现
ngx
_
http
_
lua
_
module
require
s the
Lua
library
问题***
但是我已经
安装
了
lua
, 并且在profile 文件中加入了:```shell
export
LUA
JIT_LIB=/usr/local/lib
export
LUA
JIT_INC=/usr/local/include/
lua
jit-2.1
网上看...
安装
步骤可以参考
1.
安装
依赖,我的是centos,其他系统请参考上边链接里的说明
yum install readline-devel pcre-devel openssl-devel gcc
2.下载 openresty (可以下载最新的)
tar -xzvf
ngx
_openresty-1.7.7.2.tar.gz
ngx
_openresty-1.7.7.2/bundle目录里存放着
nginx
核心和很多第三方模块,比如有我们需要的
Lua
和
Lua
JIT。
3.
安装
Lua
JIT
cd bundle/
Lua
JIT-2.1-20150120/
make clean && make && make install
ln -sf
lua
jit-2.
【
Nginx
】./
configure
:
error
: the
HTTP
gzip
module
require
s the zlib
library
. You can either
ngx
_
lua
_anticc
ngx
_
lua
_anticc是
Nginx
的 CC(ChallengeCollapsar) 攻击缓解工具。 CC 攻击(即
HTTP
请求泛洪)是一种第 7 层 DDoS 攻击。
ngx
_
lua
_anticc 是
Nginx
基于的扩展。 有了它,您可以轻松地为您的 Web 服务器添加 CC 攻击保护。
当前版本: 。
配置&&
安装
1.准备你的
nginx
要使用
ngx
_
lua
_anticc,您必须使用
ngx
_
lua
支持重新编译
nginx
,请参阅的
安装
文档。
ngx
_
lua
依赖于
Lua
JIT(推荐)或
Lua
,请确保在进一步配置之前已
安装
Lua
JIT/
Lua
。
2. 用你的
nginx
部署
ngx
_
lua
_anticc
将 tarball 解压缩到与
nginx
.conf文件相同的目录。
编辑你的
nginx
.conf ,添加in
http
{
lua
_package_path "/opt/app/
nginx
/conf/
lua
/?.
lua
";
init_by_
lua
_file /opt/app/
nginx
/conf/
lua
/init.
lua
;
server {
#
lua
_code_cache off; # 在
lua
脚本调试模式下使用
access_by_
lua
_file /opt/app/
nginx
/conf/
lua
/rate_limit.
lua
;
防御cc攻击
进入灰1阶段次数统计
下载vhelper, 执行install.sh(自动下载所有依赖库)
根据sample configuration修改
nginx
.conf
export LD_
LIBRARY
_PATH=/usr/local/lib:$LD_
LIBRARY
_PATH
执行
nginx
-t检查配置是否正确
Sample Configuration
http
{
resolver 8.8.8.8;
lua
_package_path '/usr/dev/workspace/?.
lua
;/usr/dev/
lua
-resty-
http
-0.02/lib/?.
lua
;/usr/dev/
Lua
XM
一、为什么需要
安装
Lua
?
尽管
Nginx
官方自带的核心模块外加第三方的模块能够满足我们大部分的业务需要,但是业务需求、业务场景变化需要添加些额外的功能,自己去开发一个
nginx
模块相对来说比较笨重,我们可以使用
lua
脚本直接内嵌到
nginx
当中实现一些业务逻辑,完成一些特殊的功能需求。
二、
安装
lua
模块
1、编译
安装
下载地址
http
s://github.com/openresty/
lua
jit2 当前下载的是v2.1版本
git clone
http
s://github.com/openresty/
自己构建镜像bilxio/
nginx
-
lua
-waf ,在
nginx
-
lua
-waf文件夹执行如下命令:
docker build -t bilxio/
nginx
-
lua
-waf .
或者,直接拉它,
docker pull bilxio/
nginx
-
lua
-waf
要运行映像并将端口 8080 转发到“10.10.10.9:80”:
docker run -d -p 8080:80 -e PROXY_REDIRECT_IP=10.10.10.9 \
bilxio/
nginx
-
lua
-waf
复制并修改 src/waf/config.
lua
。 通过-v param 将修改后的配置挂载到容器
cp src/waf/config.
lua
/tmp/config.
lua
docker run -d -p 8080:80 -e PR
想在
nginx
做一个拦截转发的事情,刚刚开始想到的是负载均衡,发现负载均衡没有办法获取到请求,根据请求头进行进行转发数据,然后又开始找资料,刚刚好看到一个
lua
脚本语言配置的
nginx
的环境。
做为一名躺平程序员竟然要我学习新的知识,我的天啦!!! 过程实在可怕,于是乎我变成一个拿来主义。通过各种百度 C + V 工程师终于配置好了
nginx
_
lua
模块
查看自己
nginx
的编译配置
nginx
-V
我的配置是相当简单就一个ssl的配置。后面一系列操作到现在的
lua
满配操作。
TLS SNI.
./
configure
--prefix=/usr/local/
nginx
--with-
http
_ssl_
module
--with-pcre=/usr/local/src/pcre-8.42
make && make install
以上命令中的`--with-pcre`参数指定了PCRE库的
安装
路径,需要根据实际
安装
路径进行修改。
完成以上操作后,再次启动
Nginx
即可。