国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Nginx > 正文

在Nginx中配置image filter模塊來實現(xiàn)動態(tài)生成縮略圖

2024-08-30 12:26:24
字體:
供稿:網(wǎng)友

先來看一下什么是nginx的image filter模塊。

HttpImageFilterModule用來裁剪過大的圖片到指定大小,是nginx自帶模塊,默認不會開啟
開啟HttpImageFilterModule需要在編譯要帶上參數(shù) --with-http_image_filter_module

該模塊主要有兩個指令:
語法: image_filter (test | size | resize width height | crop width height)
默認是: 無
可出現(xiàn)的上下文: location

該指令指定圖像的轉(zhuǎn)化形式:

test - 測試回復(fù)是否是JPEG、GIF、或PNG圖片(不支持BMP等其他格式),出錯時返回415。
size - 返回圖片的JSON數(shù)據(jù),比如:( "Img": ( "width": 100, "height": 100, "type": "gif"))
resize - 根據(jù)設(shè)置按比例得減小圖像,比如100*100的圖片,而設(shè)置是50*25,減小后的圖片為25*25。如果你只想設(shè)置一個維度,可以用“-”代替。出錯時返回415。
crop - 根據(jù)設(shè)置按比例得減小圖像,然后裁剪成跟設(shè)置一樣大小的圖片。比如100*100的圖片,而設(shè)置是50*25,減小后的圖片為50*50,Nginx會選取中間高度25的像素,形成50*25的圖片,所以圖片會有缺失。如果你只想設(shè)置一個維度,可以用“-”代替。出錯時返回415。

語法: image_filter_buffer size
默認值: image_filter_buffer 1M
可出現(xiàn)的位置: http, server, location

該指令設(shè)置單圖片緩存的最大值,如果過濾的圖片大小超過緩存大小,會報錯返回415。

現(xiàn)在開始時重點:

有了如上認識再配合locaiont、if、image_filter 就可以讓nginx動態(tài)生成縮略圖了。

假設(shè)你的圖片位于/img目錄下

訪問縮略圖方式
//m.survivalescaperooms.com/img/9GUMJR7200AJ0003_90x90.jpg
訪問原圖方式
//m.survivalescaperooms.com/img/9GUMJR7200AJ0003_90x0.jpg
//m.survivalescaperooms.com/img/9GUMJR7200AJ0003_0x50.jpg
//m.survivalescaperooms.com/img/9GUMJR7200AJ0003_0x0.jpg
//m.survivalescaperooms.com/img/9GUMJR7200AJ0003.jpg

添加如下配置到server上下文即可

    location ~* /img/(.+)_(d+)x(d+).(jpg|gif|png)$ {            set $h $2;      set $w $3;      if ($h = "0") {        rewrite /img/(.+)_(d+)x(d+).(jpg|gif|png)$ /img/$1.$4 last;      }      if ($w = "0") {        rewrite /img/(.+)_(d+)x(d+).(jpg|gif|png)$ /img/$1.$4 last;      }      #根據(jù)給定的長寬生成縮略圖      image_filter resize $h $w;      #原圖最大2M,要裁剪的圖片超過2M返回415錯誤,需要調(diào)節(jié)參數(shù)image_filter_buffer       image_filter_buffer 2M;                         #error_page 415       /img/notfound.jpg;      try_files /img/$1.$4 /img/notfound.jpg;     }    location ~* /img {          }

生成縮略圖只是image_filter功能中的一個,它一共支持4種參數(shù):
    test:返回是否真的是圖片
    size:返回圖片長短尺寸
    corp:截取圖片的一部分
    resize:縮放圖片

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 含山县| 台北市| 洛阳市| 时尚| 万安县| 萍乡市| 政和县| 伊金霍洛旗| 绩溪县| 平安县| 扎鲁特旗| 绍兴县| 略阳县| 岢岚县| 广灵县| 竹山县| 启东市| 大埔县| 凭祥市| 丹巴县| 潼南县| 无极县| 延长县| 信宜市| 河曲县| 卢氏县| 锡林郭勒盟| 达日县| 图片| 泰州市| 赤峰市| 宁津县| 宜春市| 临汾市| 武汉市| 开鲁县| 都江堰市| 洛宁县| 兴安县| 浦城县| 陆良县|