网站上常常一张图片,多个地方需要使用不同的尺寸,一般的方案是上传的时候,根据不同的尺寸用程序生成多张图片。 
这么做有两个缺点: 
1.如果需要新的尺寸图片的话,只能遍历下数据库,重新生成一次图片。 
2.图片的尺寸会越来越多,要存的图片也越来越多,仅仅是因为他们的尺寸不同。 
nginx有个模块,可以处理此内容,http_image_filter_module,可以重新根据定义的大小来压缩后台代理服务器的原始图片,经测试,效果不错。 
此模块默认是不安装的,插件名称http_image_filter_module ,安装nginx的时候,使用--with-http_image_filter_module来进行安装 
安装方法,http://mushme.iteye.com/blog/1870080

  1. server{
  2. listen 8282;
  3. server_name  simg.frady.info;#小尺寸图片的域名
  4. root /web/www/ROOT/;
  5. location /picture/ {#此目录下的图片会被统一裁切
  6. image_filter test;
  7. proxy_pass http://img.frady.info;#原始图片的域名
  8. image_filter resize 60 60;
  9. #  image_filter rotate 90;#旋转90度,这东西实际的使用场景有吗,在页面上旋转图片是用这个做?
  10. error_page   415 = /nopic.jpg;
  11. }
  12. }
  1. 下面的配置可以反馈图片的信息
  2. location /picture/ {
  3. proxy_pass http://img.frady.info;
  4. image_filter size;
  5. }

结果如 
{ "img" : { "width": 208, "height": 181, "type": "jpeg" } }

nginx自动生成缩略图的更多相关文章

  1. 帝国cms实现自动生成缩略图和自动分页功能

    无论你手工发布,还是采集而来,免不了要进行手工操作弄缩略图,不然标题图片没有,挺烦人的 只需一次设定,就可以在文章编辑框里自动勾选上分页和生成缩略图,免除你次次进行操作的麻烦,好了,废话不多说,上菜“ ...

  2. [原创]超强C#图片上传,加水印,自动生成缩略图源代码

    <%@ Page Language=“C#“ AutoEventWireup=“true“ %> <%@ Import Namespace=“System“ %> <%@ ...

  3. 【Nginx】面试官竟然问我Nginx如何生成缩略图,还好我看了这篇文章!!

    写在前面 今天想写一篇使用Nginx如何生成缩略图的文章,想了半天题目也没想好,这个题目还是一名读者帮我起的.起因就是这位读者最近出去面试,面试官正好问了一个Nginx如何生成缩略图的问题.还别说,就 ...

  4. (转)php 根据url自动生成缩略图并处理高并发问题

    分享是一种精神,与技术高低无关!   图片缩略图动态生成- [代码编程] 2011-08-23 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://www.blogbus.c ...

  5. nginx实时生成缩略图到硬盘上

    现在随着各终端的出现(手机,ipad等平板),以及各种终端的手机分辨率和尺寸都不同,现在手机用户流量都是宝,网上出现了各种各样的生成缩略图功能的架构,有使用php实时生成缩略图的,也有用nginx + ...

  6. Office文件上传自动生成缩略图

    来源:微信公众号CodeL 前不久产品经理提出一个X的需求,说上传office文件的时候需要将首页自动截图,用于显示文件列表的时候将文件第一页缩略图展示给用户.实现的方式有多种,这里给大家介绍一个简单 ...

  7. Office文件上传自动生成缩略图-C#开发

    原文: http://www.knowsky.com/898407.html 上传office文件的时候需要将首页自动截图,用于显示文件列表的时候将文件第一页缩略图展示给用户.实现的方式有多种,这里给 ...

  8. Web服务图片压缩,nginx+lua生成缩略图

    背景 目前而言,用移动端访问Web站点的用户越来越多,图片对流量的消耗是比较大的,之前一个用户用我们网站的app浏览的时候,2个小时耗去了2个G的流量,这是个很严重的问题,需要对图片进行压缩,减少对用 ...

  9. Android 让系统自动生成缩略图并写入媒体库

    MediaStore.Video.Thumbnails.getThumbnail(ContentResolver cr, long origId, int kind, BitmapFactory.Op ...

随机推荐

  1. git Xcode

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://2009315319.blog.51cto.com/701759/1158515 ...

  2. ios学习--TableView详细解释

    -.建立 UITableView DataTable = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 420)]; [DataTa ...

  3. Python实现自动登录/登出校园网网关

    学校校园网的网络连接有免费连接和收费连接两种类型,可想而知收费连接浏览体验更佳,比如可以访问更多的网站.之前收费地址只能开通包月服务才可使用,后来居然有了每个月60小时的免费使用收费地址的优惠.但是, ...

  4. Vscode 修改为中文语言

    1 官网下载最新版的vscode : https://code.visualstudio.com/Download 2 安装之后, 按键 F1  搜索框 输入 language   选择 config ...

  5. 有道云笔记同步IT笔试面试资源

    有道云笔记同步资源 放在手机上ipad或者电脑上看..特别方便...精心整理..暂时只有c++的..希望大家喜欢 暂时只扒了一些c++的..java的随后扒 主要都是取自<程序员面试笔试宝典&g ...

  6. 重新学习python类

    之前觉得有java和c++的底子,对python的类没有认真研习,后面到了写项目的时候各种懵逼.终于决定彻底解决python的类问题. 一.python的类定义: class cls_name: de ...

  7. C# 文件夹的常用操作

    C#获取文件夹下的所有文件的文件名 string path = @"E:\微课视频大于200M"; DirectoryInfo folder = new DirectoryInfo ...

  8. iOS - 获取状态栏和导航栏尺寸(宽度和高度)

    iPhone开发当中,有时需要获取状态栏和导航栏高度.宽度信息,方便布局其他控件.下面介绍一下如何获取这些信息: // 状态栏(statusbar) CGRect rectStatus = [[UIA ...

  9. 通过JS模拟select表单,达到美化效果[demo]

    .m-form{background:#fff;padding:50px;font-family:12px/1.5 arial,\5b8b\4f53,sans-serif;} .m-form ul,. ...

  10. HDU 4247 Pinball Game 3D(cdq 分治+树状数组+动态规划)

    Pinball Game 3D Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...