Ubuntu16 nginx安装http_image_filter_module模块

配置image_filter

配置


 location ~* /images/.*.(jpg|gif|png)$ {
            # root /home/wwwroot/default/wounion/dragonfly/public/;
            image_filter resize 100 100;
            image_filter_buffer 100M;
 }

重启nginx

# sudo nginx -s reload
nginx: [emerg] unknown directive "image_filter" in /usr/local/nginx/conf/vhost/wounion.conf

提示指令不存在。

因为http_image_filter_module 模块并没有安装。

如何安装呢?

安装image_filter模块依赖的库。

sudo apt-get install libgd2-xpm-dev

查看之前的配置

nginx -V
--user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-openssl=/usr/local/lnmp1.4-full/src/openssl-1.0.2l

添加上图片模块【由于它是系统模块,不需要额外下载,直接添加就可以了】

--user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-openssl=/usr/local/lnmp1.4-full/src/openssl-1.0.2l --with-http_image_filter_module

进入安装nginx的文件夹中,保证版本一致

# pwd
/usr/local/lnmp1.4-full/src/nginx-1.12.2

sudo ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-openssl=/usr/local/lnmp1.4-full/src/openssl-1.0.2l --with-http_image_filter_module
sudo make

替换二进制文件,最好做一个备份

sudo cp -f objs/nginx /usr/local/nginx/sbin/nginx

重新查看nginx -V

# nginx -V
nginx version: nginx/1.12.2
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 
built with OpenSSL 1.0.2l  25 May 2017
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-openssl=/usr/local/lnmp1.4-full/src/openssl-1.0.2l --with-http_image_filter_module

我们发现成功的安装了图片处理模块。

这个时候,重新启动nginx。就不会报模块错误了。

下面是见证奇迹的时刻。【如果没有效果,记得Ctrl+F5清理浏览器缓存。】

tips:vim裁剪小知识
NORMAL模式下 3dd p ,裁剪3行,然后在某个位置,粘贴上。

原文地址:https://www.cnblogs.com/jiqing9006/p/10097914.html