参考链接:nginx官方文档

安装

ngx_http_image_filter_module一个官方模块,用于转换JPEG、GIF、PNG和WebP格式的图像。

默认情况下,此模块不是启用的,在编译时使用--with-http_image_filter_module配置参数启用它。

此模块使用libgd库。建议使用库的最新可用版本,libgd库必须对WebP支持进行编译。

基本使用

Syntax:     image_filter off;
image_filter test;
image_filter size;
image_filter rotate 90 | 180 | 270;
image_filter resize width height;
image_filter crop width height;
Default: image_filter off;
Context: location

示例

location /img/ {
proxy_pass http://backend;
image_filter resize 150 100;
image_filter rotate 90;
error_page 415 = /empty;
} location = /empty {
empty_gif;
}

参数说明

off:

关闭模块;

test:

确保响应为JPEG、GIF、PNG或WebP格式的图像。否则,返回415(Unsupported Media Type)错误。

size:

以JSON格式输出有关图像的信息,例如:

{ "img" : { "width": 100, "height": 100, "type": "gif" } }

如果出现错误,输出如下:

{}

rotate 90|180|270:

按指定的度数逆时针旋转图像。参数值可以包含变量。此模式可以单独使用,也可以与“调整大小”和“裁剪”转换一起使用。

resize width height:

缩小。若要仅减少一个维度,可以将另一个维度指定为“-”。如果出现错误,服务器将返回代码415(Unsupported Media Type)。参数值可以包含变量。当与“旋转”参数一起使用时,旋转发生在还原之后。

crop width height:

裁剪。若要仅减少一个维度,可以将另一个维度指定为“-”。如果出现错误,服务器将返回代码415(Unsupported Media Type)。参数值可以包含变量。与“旋转”参数一起使用时,旋转发生在还原之前。

image_filter_buffer size:

设置用于读取图像的缓冲区的最大大小。超过大小时,服务器返回错误415(Unsupported Media Type)。

image_filter_interlace on | off:

如果启用,最终图像将被隔行扫描。对于JPEG,最终图像将采用“渐进式JPEG”格式。

image_filter_jpeg_quality quality:

设置转换的JPEG图像的所需质量。可接受的值在1到100之间。较小的值通常意味着较低的图像质量和较少的数据传输。建议的最大值为95。参数值可以包含变量。

image_filter_sharpen percent:

增加最终图像的清晰度。锐度百分比可以超过100。零值将禁用锐化。参数值可以包含变量。

image_filter_transparency on|off:

定义在使用调色板指定的颜色转换GIF图像或PNG图像时是否应保留透明度。透明度的丧失会使图像质量更好。PNG中的alpha通道透明度始终保持不变。

image_filter_webp_quality quality:

设置转换的WebP图像的所需质量。可接受的值在1到100之间。较小的值通常意味着较低的图像质量和较少的数据传输。参数值可以包含变量。

ngx_http_image_filter_module使用的更多相关文章

  1. nginx ngx_http_image_filter_module 简单试用

    nginx包含了一个ngx_http_image_filter_module 模块,我们可以方便的进行图片的缩略图,平时一些简单的功能 已经够用了 环境准备 为了简单使用docker-compose ...

  2. Nginx模块之http.md

    ngx_http_access_module ngx_http_access_module模块允许限制对某些客户端地址的访问. 访问也可以通过密码,子请求的结果或JWT来限制. 通过地址和密码的同时访 ...

  3. centos 7.0 安装nginx 1.9.10

    可以参考以前安装成功的案例 centos 7.0 nginx 1.7.9成功安装过程 官网下载 http://nginx.org/en/download.html nginx下载位置 /usr/loc ...

  4. Nginx编译参数.md

    Nginx 介绍 简介 Nginx(发音同engine x)是一个网页服务器,它能反向代理HTTP, HTTPS, SMTP, POP3, IMAP的协议链接,以及一个负载均衡器和一个HTTP缓存. ...

  5. centos 7.0 nginx 1.7.9成功安装过程

    centos 7.0根目录 的目录构成 [root@localhost /]# lsbin dev home lib64 mnt proc run srv tmp varboot etc lib me ...

  6. nginx图片处理

    前言 不管一个系统或网站的大与小,都存在相应的图片处理,生成缩略图.为图片加水印等等,如果涉及到APP端,这个图片的处理需求变得更加重要了,因为在目前看来,客户端的屏幕大小不一,会导致以下问题: 1. ...

  7. Nginx图片剪裁模块探究

    http://nginx.org/en/docs/http/ngx_http_image_filter_module.html http://cwtea.blog.51cto.com/4500217/ ...

  8. Nginx-->基础-->安装-->001:安装总结

    root@ubuntu:/data/src/nginx# ./configure --help --help print this message --prefix=PATH set installa ...

  9. nginx编译模块详解

    –prefix= 指向安装目录–sbin-path 指向(执行)程序文件(nginx)–conf-path= 指向配置文件(nginx.conf)–error-log-path= 指向错误日志目录–p ...

随机推荐

  1. Codeforces Round #625 (Div. 2, based on Technocup 2020 Final Round) A. Contest for Robots(数学)

    题意: n 道题,2 个答题者,已知二者的做题情况,你是受贿裁判,可以给每题指定分值(≥1),求甲乙分数(甲>乙)相差最小时最大分值的最小值. 思路: 统计只有甲或乙做出的题目数. 加一取下整判 ...

  2. AtCoder Beginner Contest 173 E - Multiplication 4 (思维)

    题意:有\(n\)个数,从中选\(k\)个数累乘,求最大的乘积\((mod\ 10^9+7)\). 题解: 1.假如全是负数,并且选奇数个,那么从小到大选. 2.否则,考虑当前状态,假如\(k\)是奇 ...

  3. WPF 主动触发依赖属性的 PropertyChanged

    需求背景 需要显示 ViewModel 中的 Message/DpMessage,显示内容根据其某些属性来确定.代码结构抽象如下: // Model public class Message : IN ...

  4. ElasticSearch入门到筋痛

    1. 什么是ES ES中文网:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html ES:是一款基于Lucene ...

  5. codeforces 1009D Relatively Prime Graph【欧拉函数】

    题目:戳这里 题意:要求构成有n个点,m条边的无向图,满足每条边上的两点互质. 解题思路: 显然1~n这n个点能构成边的条数,就是2~n欧拉函数之和(x的欧拉函数值代表小于x且与x互质的数的个数. 因 ...

  6. cookie,session,token之间的联系与区别

    发展史 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应,  尤其是我不用 ...

  7. 吐槽 Apple iPhone 十大反人类的设计 All In One

    吐槽 Apple iPhone 十大反人类的设计 All In One 不支持 GPS 快捷开关 每次都要到,设置> 隐身 > 位置,脑残的设计 顶部的状态栏,网络不支持显示网速 顶部的状 ...

  8. 如何使用 js 扩展 prototype 方法

    如何使用 js 扩展 prototype 方法 expand prototype function enhancedLog(msg = ``) { // this.msg = msg; enhance ...

  9. redux 中间件 redux-saga 使用教程

    redux 中间件 redux-saga 使用教程 redux middleware refs https://redux-saga.js.org/docs/ExternalResources.htm ...

  10. js script all in one

    js script all in one 你不知道的 js secret https://html.spec.whatwg.org/multipage/scripting.html https://h ...