最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Nginx中自帶的模塊配置縮略圖功能的教程

 更新時間:2016年06月14日 09:40:57   作者:phphot  
Nginx的http_image_filter_module模塊可以用來處理縮略圖,這里我們就來看看使用Nginx中自帶的模塊配置縮略圖功能的教程,需要的朋友可以參考下

http_image_filter_module是nginx提供的集成圖片處理模塊,支持nginx-0.7.54以后的版本,在網(wǎng)站訪問量不是很高磁盤有限不想生成多余的圖片文件的前提下可,就可以用它實時縮放圖片,旋轉(zhuǎn)圖片,驗證圖片有效性以及獲取圖片寬高以及圖片類型信息,由于是即時計算的結(jié)果,所以網(wǎng)站訪問量大的話,不建議使用。
安裝
安裝還是很簡單的,默認(rèn)HttpImageFilterModule模塊是不會編譯進(jìn)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后就可以進(jìn)行配置了,做最簡單的配置,先讓模塊可以跑起來^^

location ~ /simg/.*\.jpg$ {
  #proxy_pass   http://10.11.11.11;
  #rewrite "/simg/(.*\.jpg)$" /img/$1 break ;
  image_filter  resize 100 100;
  error_page   415  = /empty;
}

 該模塊主要有兩個指令:
指令1:
語法: image_filter (test | size | resize width height | crop width height)
默認(rèn)是: 無
可出現(xiàn)的上下文: location
該指令指定圖像的轉(zhuǎn)化形式:
(1)test - 測試回復(fù)是否是JPEG、GIF、或PNG圖片(不支持BMP等其他格式),出錯時返回415。
(2)size - 返回圖片的JSON數(shù)據(jù),比如:( "Img": ( "width": 100, "height": 100, "type": "gif"))
(3)resize - 根據(jù)設(shè)置按比例得減小圖像,比如100*100的圖片,而設(shè)置是50*25,減小后的圖片為25*25。如果你只想設(shè)置一個維度,可以用“-”代替。出錯時返回415。
(4)crop - 根據(jù)設(shè)置按比例得減小圖像,然后裁剪成跟設(shè)置一樣大小的圖片。比如100*100的圖片,而設(shè)置是50*25,減小后的圖片為50*50,Nginx會選取中間高度25的像素,形成50*25的圖片,所以圖片會有缺失。如果你只想設(shè)置一個維度,可以用“-”代替。出錯時返回415。
指令2:
語法: image_filter_buffer size
默認(rèn)值: image_filter_buffer 1M
可出現(xiàn)的位置: http, server, location
該指令設(shè)置單圖片緩存的最大值,如果過濾的圖片大小超過緩存大小,會報錯返回415。

用法
現(xiàn)在開始是重點:
有了如上認(rèn)識再配合locaiont、if、image_filter 就可以讓nginx動態(tài)生成縮略圖了。
假設(shè)你的圖片位于/img目錄下
訪問縮略圖方式

http://www.xxx.cn/img/9GUMJR7200AJ0003_90x90.jpg

訪問原圖方式

http://www.xxx.cn/img/9GUMJR7200AJ0003_90x0.jpg
http://www.xxx.cn/img/9GUMJR7200AJ0003_0x50.jpg
http://www.xxx.cn/img/9GUMJR7200AJ0003_0x0.jpg
http://www.xxx.cn/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 {
      
    }

    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 {
      
    }

相關(guān)文章

  • Nginx安全配置全過程

    Nginx安全配置全過程

    這篇文章主要介紹了Nginx安全配置全過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Nginx 應(yīng)用范圍和使用詳解

    Nginx 應(yīng)用范圍和使用詳解

    這篇文章主要介紹了Nginx 應(yīng)用范圍和使用詳解的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 圖文詳解Nginx版本平滑升級方案

    圖文詳解Nginx版本平滑升級方案

    Nginx平滑升級就是指在不停止業(yè)務(wù)的前提下,實現(xiàn)對Nginx軟件版本的升級,下面這篇文章主要給大家介紹了關(guān)于Nginx版本平滑升級方案的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 利用njs模塊在nginx配置中引入js腳本

    利用njs模塊在nginx配置中引入js腳本

    這篇文章主要給大家介紹了關(guān)于利用njs模塊在nginx配置中引入js腳本的相關(guān)資料,通過這個腳本實現(xiàn)一些更復(fù)雜的?nginx?配置功能,需要的朋友可以參考下
    2021-12-12
  • nginx不支持apk ipa文件下載的設(shè)置方法

    nginx不支持apk ipa文件下載的設(shè)置方法

    今天在幫客戶配置nginx服務(wù)器的時候,對方需要支持apk ipa文件下載,這里簡單分享下,方便需要的朋友
    2014-03-03
  • Nginx 出現(xiàn) 403 Forbidden 最終解決方法

    Nginx 出現(xiàn) 403 Forbidden 最終解決方法

    這篇文章給大家介紹了Nginx 出現(xiàn) 403 Forbidden 最終解決方法,下面分步驟給大家介紹的非常詳細(xì),感興趣的的朋友一起看看吧
    2017-08-08
  • Nginx反向代理的location路徑映射方式

    Nginx反向代理的location路徑映射方式

    這篇文章主要介紹了Nginx反向代理的location路徑映射方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 解決nginx啟動失敗(bind()?to?0.0.0.0:80?failed,An?attempt?was?made?to?access?a?socket?in...)

    解決nginx啟動失敗(bind()?to?0.0.0.0:80?failed,An?attempt?was?

    這篇文章主要介紹了解決nginx啟動失敗問題(bind()?to?0.0.0.0:80?failed,An?attempt?was?made?to?access?a?socket?in?...),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Nginx中的Gzip壓縮配置介紹

    Nginx中的Gzip壓縮配置介紹

    這篇文章主要介紹了Nginx中的Gzip壓縮配置介紹,本文先是對這些指令做了講解,然后給出一個配置示例,需要的朋友可以參考下
    2014-12-12
  • Windows下Nginx的配置及配置文件部分介紹

    Windows下Nginx的配置及配置文件部分介紹

    這篇文章主要介紹了Windows下Nginx的配置及配置文件部分介紹,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03

最新評論

吉林省| 南京市| 临汾市| 德钦县| 通许县| 宜宾市| 盐城市| 韶山市| 迭部县| 新沂市| 上栗县| 惠东县| 江油市| 祁连县| 三原县| 霸州市| 柘城县| 开平市| 驻马店市| 普格县| 阜新| 伊宁县| 清水县| 静海县| 洛川县| 邛崃市| 大渡口区| 乡城县| 大方县| 即墨市| 濮阳市| 屏南县| 布尔津县| 西峡县| 固安县| 洛隆县| 绩溪县| 罗源县| 东港市| 丹棱县| 无极县|