Nginx Image缩略图模块加强网站运行速度
在大型网站实际开发当中,大家都会遇到关于图片压缩的处理,传统的方法是自己开发一套图片处理的服务,根据需求生成不同图片。这样是可以解决问题。但是个人感觉不太符合互联网的敏捷开发的精神。
下面我给大家介绍一个好用又方便的方法。就是 nginx 下面的一个扩展。 Image 缩略图模块;
1 、模块的支持:
模块同时支持 Nginx 和 tengine
2 、模块的功能:
- 本 nginx 模块主要功能是对请求的图片进行缩略 / 水印处理,支持文字水印和图片水印。
- 支持自定义字体,文字大小,水印透明度,水印位置。
- 判断原图是否是否大于指定尺寸才处理。 .... 等等
3 、安装前须知
重点:必须要收动安装的 nginx (必须)
4 、安装开始
先下载图片处理模块并安装
$ wget https://github.com/3078825/nginx-image/archive/master.zip
$ unzip master.zip
$ ./configure --add-module=./nginx-image-master
$ make
$ make install
这里要注意的是,这个模块要放在 nginx 原来编译的目录里要不会报错
接下来配置
# 先查找一下 nginx 的配置文件在什么地方
- find / -name nginx
# 查找到后进入并打开
-
vim nginx
location / {
root html;
#添加以下配置
image on;
image_output on;
}
然后重启就可以了
调用说明
C 参数按请求宽高比例从图片高度 10% 处开始截取图片,然后缩放 / 放大到指定尺寸( 图片缩略图大小等于请求的宽高 )
M 参数按请求宽高比例居中截图图片,然后缩放 / 放大到指定尺寸( 图片缩略图大小等于请求的宽高 )
T 参数按请求宽高比例按比例缩放 / 放大到指定尺寸( 图片缩略图大小可能小于请求的宽高 )
W 参数按请求宽高比例缩放 / 放大到指定尺寸,空白处填充白色背景颜色( 图片缩略图大小等于请求的宽高 )
- http://127.0.0.1/test.jpg!c300x300.jpg
- http://127.0.0.1/test.jpg!t300x300.jpg
- http://127.0.0.1/test.jpg!m300x300.jpg
- http://127.0.0.1/test.jpg!w300x300.jpg
- http://127.0.0.1/test.c300x300.jpg
- http://127.0.0.1/test.t300x300.jpg
- http://127.0.0.1/test.m300x300.jpg
- http://127.0.0.1/test.w300x300.jpg