Linux 执行";制造;在编译和安装";ModSecurity-Nginx“;模块

Linux 执行";制造;在编译和安装";ModSecurity-Nginx“;模块,linux,nginx,web-application-firewall,Linux,Nginx,Web Application Firewall,我在编译和安装“ModSecurity-Nginx”模块时遇到以下错误 安装“ModSecurity-Nginx”模块 编撰 错误 /opt/ModSecurity nginx/src/ngx_http_ModSecurity_module.c:在函数“ngx_http_ModSecurity_create_ctx”中: /opt/ModSecurity nginx/src/ngx_http_ModSecurity_module.c:259:9:错误:隐式声明函数'msc_new_transrr

我在编译和安装“ModSecurity-Nginx”模块时遇到以下错误

安装“ModSecurity-Nginx”模块 编撰 错误 /opt/ModSecurity nginx/src/ngx_http_ModSecurity_module.c:在函数“ngx_http_ModSecurity_create_ctx”中:

/opt/ModSecurity nginx/src/ngx_http_ModSecurity_module.c:259:9:错误:隐式声明函数'msc_new_transrror=隐式函数声明]ctx->modsec_transaction=msc_new_transaction_带有_id(mmcf->modsec,mcf->rules_set,(char*)s.data,r->conne

/opt/ModSecurity nginx/src/ngx_http_ModSecurity_module.c:259:33:错误:赋值从不带ctx的整数生成指针->modsec_transaction=msc_new_transaction_,带有\u id(mmcf->modsec,mcf->rules_set,(char*)s.data,r->conne

cc1:所有警告都被视为错误

make[1]:***[objs/addon/src/ngx\u http\u modsecurity\u module.o]错误1

make[1]:离开目录“/root/nginx-1.16.1”

生成:**[build]错误2


ModSecurity nginx连接器编译失败,因为它找不到ModSecurity头。每次调用ModSecurity函数时,编译器都是第一次听到所述函数的存在,因此这是一个“隐式”函数声明

长话短说,您需要指定编译器可以在哪里找到ModSecurity头和库。为此,您应该在配置或编译连接器模块之前设置两个环境变量

export MODSECURITY_INC="/opt/ModSecurity/headers/"
export MODSECURITY_LIB="/opt/ModSecurity/src/.libs/"
这些路径直接取自文档,因此您需要根据
yum
安装
libmodsecurity-devel
软件包的位置进行调整


您可以分别找到构建ModSecurity模块和ModSecurity nginx连接器的方法。

您的描述似乎主要是代码。请详细说明您的问题。
#make  **(Now start reporting errors)**
export MODSECURITY_INC="/opt/ModSecurity/headers/"
export MODSECURITY_LIB="/opt/ModSecurity/src/.libs/"