我正在尝试configure
nginx来构建GeoIP 2模块,通过以下安装:https://github.com/leev/ngx_http_geoip2_module
首先,我仍然不明白什么是defrences之间的static
和dynamic
模块,为什么我不能只是apt install
该模块..
问题是我想在不同的机器上构建/创建它,所以我必须通过复制这个命令的输出来复制目标机器上的configure
标志:
nginx -V
然后我在测试机器上运行了这个命令:
PKG_CONFIG_PATH="/usr/lib/x86_64-linux-gnu/pkgconfig/" ./configure --without-http_rewrite_module --without-http_gzip_module --add-module=/path/ngx_http_geoip2_module-3.3 (PASTE DESTINATION NGINX -V OUTPUT)
make
make install
然后在继承后,我复制了文件名:ngx_http_geoip2_module.so
到目标机器并运行nginx -t
我得到这个错误:
nginx: [emerg] module "/etc/nginx/modules/ngx_http_geoip2_module.so" is not binary compatible in /etc/nginx/nginx.conf
nginx: configuration file /etc/nginx/nginx.conf test failed
我的目标计算机:Ubuntu 20 Nginx 1.20.1
2条答案
按热度按时间wgmfuz8q1#
--with-compat --add-module=/path/to/ngx_http_geoip2_module
或
--with-compat --add-dynamic-module=/path/to/ngx_http_geoip2_module
xqkwcwgp2#
我的解决方案是添加
--with-compat
选项,下面是我在Almalinux 9.1上构建它时使用的命令: