nginx图片过滤处理模块http_image_filter_module安装配置
http_image_filter_module是nginx提供的集成图片处理模块,支持nginx-0.7.54以后的版本,在网站访问量不是很高磁盘有限不想生成多余的图片文件的前提下可,就可以用它实时缩放图片,旋转图片,验证图片有效性以及获取图片宽高以及图片类型信息,由于是即时计算的结果,所以网站访问量大的话,不建议使用。
安装还是很简单的,默认HttpImageFilterModule模块是不会编译进nginx的,所以要在configure时候指定
./configure arguments: --prefix=/usr/local/nginx --with-http_image_filter_module
PS: HttpImageFilterModule模块需要依赖gd-devel的支持,可以使用yum或apt-get方便地安装,如果未安装回报“/configure: error: the HTTP image filter module requires the GD library.”错误
yum install gd-devel
apt-get install libgd2-xpm libgd2-xpm-dev
make&&make install后就可以进行配置了,做最简单的配置,先让模块可以跑起来^^
location ~ /simg/.*\.jpg$ {
#proxy_pass http://10.11.11.11;
#rewrite "/simg/(.*\.jpg)$" /img/$ break ;
image_filter resize ;
error_page = /empty;
}
最后开启nginx,这样访问/simg/目录下的图片,都会按照高度最高100并且宽度最高100按照原图比例进行截取出来,并输出给浏览器。当然也可以开启重写去读取本机另一个目录下源文件;如果不在一台机器上就可以开启proxy_pass,并加上重写即可。
http_image_filter_module支持5种指令:
image_filter:测试图片文件合法性(image_filter test);3个角度旋转图片(image_filter rotate 90 | 180 | 270);以json格式输出图片宽度、高度、类型(image_filter size);最小边缩小图片保持图片完整性(resize width height);以及最大边缩放图片后截取多余的部分(image_filter crop [width] [height]);
image_filter_jpeg_quality:设置jpeg图片的压缩质量比例(官方最高建议设置到95,但平时75就可以了);
image_filter_buffer:限制图片最大读取大小,默认为1M;
image_filter_transparency:用来禁用gif和palette-based的png图片的透明度,以此来提高图片质量。
image_filter_sharpen:这个指令在nginx-1.1.8和1.0.11版本后增加的,目前还不知道是干啥用,有知道的朋友或者发现文中有什么错误的朋友请留言给我吧^^
转载:http://www.cnblogs.com/tintin1926/archive/2012/07/11/2586624.html
最新文章
- fonts.googleapis.com 加载慢的解决方法
- keytool命令记录
- 判断移动端js代码
- RBAC权限设计实例
- qt 5 界面美化
- ALS数学点滴
- java中关于线程间协作所用关键字synchronized,wait,notify的用法
- WinForm中嵌入WebBrowser,并且支持C#和JS方法的相互调用
- ubuntu eclipse android搭建
- drag
- 继承“HibernateDaoSupport”后,报“The hierarchy of the type AccoutDaoImpl is inconsistent”的解决方案
- MySQL:(二)
- Jmeter 聚合报告---测试结果分析
- kubernetes CSI 插件机制学习笔记
- windows 环境下通过运行快速启动程序
- 快速排序 [Qsort]
- 关于本科毕业论文《Laguerre小波在数值积分与微分方程数值解中的应用》存在的问题与小结
- linux自旋锁、互斥锁、信号量
- angular2.0---服务Service,使用服务进行数据处理
- 容斥原理&;&;莫比乌斯专题