Nginx在/usr/share/nginx/modules/mod-http-image-filter.conf中失败了测试版1010002而不是1012000

oac*_*ach 6 nginx

通过yum更新,在centos 6测试系统上从1.10.x升级到1.12.x升级了nginx.然后我按照步骤使GeoIP模块工作(https://tushev.org/articles/linux-bsd/32/using-dynamic-geoip-module-with-nginx-centos).

当我运行nginx -t时,会显示以下错误:

$ nginx -t
nginx: [emerg] module "/usr/lib64/nginx/modules/ngx_http_image_filter_module.so" version 1010002 instead of 1012000 in /usr/share/nginx/modules/mod-http-image-filter.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed
Run Code Online (Sandbox Code Playgroud)

在我的nginx.conf文件中,我注释掉了下面这一行

include /usr/share/nginx/modules/*.conf;
Run Code Online (Sandbox Code Playgroud)

和nginx再次按预期工作.这很好,但没有解决我的问题.由于这是一个开发环境,我需要让它100%工作.我不确定在阅读规范后我真的需要图像过滤器(http://nginx.org/en/docs/http/ngx_http_image_filter_module.html).

此外,我确实添加了单个模块并运气好了:

load_module "modules/ngx_http_geoip_module.so";
Run Code Online (Sandbox Code Playgroud)

我想知道如何解决错误显示的版本问题,并知道在我想要的那个之外省略这些模块是否可以?

感谢您的时间和考虑.

小智 13

为有类似问题的人发布另一个解决方案,在我已经配置yum为查看最新版本后,在 Centos 7 上运行以下命令对我有用:

sudo yum remove nginx-mod*
sudo yum install nginx-module-*
Run Code Online (Sandbox Code Playgroud)

这里有更多细节


hun*_*lin 2

回滚到 1.10.2。 nginx: [emerg] module "/etc/nginx/modules/ngx_http_geoip_module.so" version 1010002 instead of 1013002 in /etc/nginx/nginx.conf:12 nginx version: nginx/1.13.2