首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

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

写在前面 今天想写一篇使用Nginx如何生成缩略图的文章,想了半天题目也没想好,这个题目还是一名读者帮我起的。起因就是这位读者最近出去面试,面试官正好问了一个Nginx如何生成缩略图的问题。...A.发布新闻生成多重缩略图 – 无法匹配到各种尺寸图片 B.当相应缩略图不存在,则使用 PHP 或者 Java 等程序生成相应缩略图 – 需要程序员协助 C.使用 Nginx 自带模块生成缩略图 – 运维即可完成...D.使用 Nginx+Lua 生成缩略图 经过多方的考虑,决定使用方案 C,使用 Nginx 自带模块生成缩略图。...Nginx生成缩略图 配置Nginx 使用 Nginx 自带模块生成缩略图,模块:--with-http_image_filter_module,例如,我们可以使用如下参数安装Nginx: ....注意:使用Nginx生成等比例缩略图时有一个长宽取小的原则,例如原图是 100*10,你传入的是 10*2,那么Nginx会给你生成 10*1 的图片。

1.2K10

php生成缩略图类timthumb

用过这个类的都应该很熟悉,此类可以用来生成图片的缩略图并加以处理,如果在linux环境下安装了optipng或pngcrush工具,也可以进行网站的截图操作。...文件下载地址:http://www.zjkweiqi.cn/pcdown/93702.html wordpress自带的缩略图功能会对每次上传的所有图片根据设置的图片尺寸进行裁剪,并把原图和裁剪后的图片保存在网站空间中...该软件是专门针对wordpress开发的集成在wordpress主题中的缩略图应用项目,只会对调用的图片进行裁剪,而且是在有访问请求时才临时生成一个配置文件,在一定时间内缓存在空间中,不会生成多余的缩略图...h : 生成图片的高度,如果高度和宽度都没有指定,则默认为100*100 zc : 生成图片的缩放模式,可选值0, 1, 2, 3, 默认为1,每个值的不同之处可看下面文件的第100行注释 q : 生成图片的质量...821行注解 s : 是否对生产的图片进行锐化处理 cc : 生成图片的背景画布颜色 ct : 生成png图片时背景是否透明 温馨提示: 需要主机支持GD库; 处理过程需要一定的服务器资源支持; 不支持外链图片

1.4K00

C# 图片处理生成缩略图

缩略图通常是将图片内容进行一定的缩小展现,或裁剪展现,主要有两个目的,一是提供一定的预览功能,二是节省屏幕展示空间、节省流量。 在网站中我们通常运用在商品的列表,比如商城、图书、新闻等等列表的图片。...在C#中我们如何生成缩略图呢,也就是缩小图片,下面我们来看一看如何缩小图片。...其中方法参数如下: originalImagePath:源图路径(物理路径) thumbnailPath:缩略图路径(物理路径) width:生成缩略图宽度 height:生成缩略图高度 mode...:生成缩略图的模式 public static void MakeThumbnail(string originalImagePath, string thumbnailPath, int...通过如上的几步就完成了缩略图生成

82250

PHP自动生成缩略图函数的源码示例

一个简单但功能比较完善的自动生成缩略图的函数,可以按需要对图片进行缩放、裁切、锁定宽或高、使用空白填充 以下为源码,比较简单,相信很容易看明白,记得打开 GD 库的支持哦: <?...php /** * 生成缩略图 * @param string 源图绝对完整地址{带文件名及后缀名} * @param string 目标图绝对完整地址{带文件名及后缀名} * @param int...缩略图宽{值设为0时目标高度不能为0,目标宽度为源图宽*(目标高度/源图高)} * @param int 缩略图高{值设为0时目标宽度不能为0,目标高度为源图高*(目标宽度/源图宽)} *...'jpeg' : $type); $dst_h = $height; $dst_w = $width; $x = $y = 0; /** * 缩略图不超过源图尺寸(前提是宽或高只有一个) */ if((.../test_thumb.jpg"; //生成缩略图存放的完整路径和名称 /* 生成宽300px,高200px的缩略图,不进行裁切,空白部分将会使用背景色填充 */ $stat = img2thumb(

1K31

通过 imagick 让 PHP 生成 PSD 文件缩略图

); //去除图片信息 $im->setImageCompressionQuality(80); //图片质量 $im->writeImage('1.jpg');   以上代码已经经过测试可以正确生成出一张...建议缩略图还是以 jpg 格式,因为 png 格式不支持压缩,我在测试的时候使用 30M 的 PSD 文件,生成出来的 png 缩略图有 3M 多,而 jpg 只有 200KB 左右,并且生成 png...另外还做了极端测试,用了一近 600M 的 PSD 文件生成 jpg 缩略图,速度基本在2秒内,文件大小不到 2.5M ,由于并未对图片进行尺寸的修改,所以最终生成文件的体积可以根据实际情况再减小。...第五步、其它格式   除了 PSD 文件,我还另外尝试了一些其它格式,比如 MP4 、AVI 等视频格式,但生成速度超级慢。...最后发现比较实用的就是生成 PDF 文件的缩略图,但处理 PDF 文件前,需要安装 Ghostscript ,然后整体的代码基本和生成 PSD 的代码一样 $im = new Imagick();

2.8K50

WordPress集成PHP缩略图,并开启Nginx缓存的方法

这个 PHP 缩略图虽然可以将实时生成的图片缓存成文件,但是第二次被请求,PHP 依然需要进行一些很简单的判断,比如这个缩略图是否被缓存、缓存文件是否过期等。...虽然这位站长同学后来抛弃了这个 PHP 缩略图功能,但是张戈却记忆深刻。当  Nginx 缩略图不给力时,我第一时间就想到了它。...然后将整个文件夹上传到网站根目录,现在按照倡萌给出的 url 形式肯定就可以看到缩略图了。 ②、Nginx 规则 第①步能够正常看到缩略图效果后,我们接着部署 Nginx 规则。...在网站原有的 Nginx 规则中插入如下规则: #Nginx重写PHP缩略图URL规则 By 张戈博客 location ~ .*\....src=* 这个动态缩略图生成的接口上       if ( $width != '' ) {            rewrite ^(.*)$ /thumb/?

1.1K70

为WordPress开启Nginx缩略图功能,七牛从此陌路

这几天公司组织外出拓展训练,我在和一个开发同事(国添)聊到了 nginx 时,得知 Nginx 还有个缩略图功能!...Ps:分享前先简单的说一说实时生成缩略图的好处。肯定有朋友会疑问,WordPress 不是已经有缩略图裁剪功能了吗?而且很多主题也加入了自定义尺寸的缩略图裁剪功能,为什么还要多此一举呢?...width=480&height=480 可以发现和七牛一样,只要带上高宽参数就能生成想要的缩略图了,是不是很给力呢?...比例缩放的优点是最大程度保持图片的完整性,缺点则是如果图片的宽或高小于指定尺寸,生成缩略图可能就会空白一部分,因为要保持缩放比例;尺寸裁剪的优点就是能保证缩略图不会出现空白区域。...针对这个情况,张戈博客已经给 Nginx 启用了缓存机制,生成缩略图将缓存到本地磁盘当中,下次访问直接调取,从而解决了实时生成图片带来的 CPU 问题(可从上文 浏览器开发模式当中看到 X-Cache

1.2K50
领券