}
location ~* /(\d+)_(\d+)x(\d+).(jpg)$ {
if ( -e $document_root/$1.$4 ) { # 判断原图是否存在
rewrite /(\d+)_(\d+)x(\d+).(jpg)$ /$1.$4?h=$2&w=$3 last;
}
return 404;
}
访问图片
配置完成后,我们就可以使用类似如下的方式来访问图片。
http://www.binghe.com/123_100x10.jpg
当我们在浏览器地址栏中输入上面的链接时,Nginx会作出如下的逻辑处理。
-
首先判断是否存在原图 123.jpg,不存在直接返回 404(如果原图都不存在,那就没必要生成缩略图了)
-
跳转到 http://www.binghe.com/123.jpg?h=100&w=10,将参数高 h=100 和宽 w=10 带到 url 中。
-
Image_filter resize 指令根据 h 和 w 参数生成相应缩略图。
注意:使用Nginx生成等比例缩略图时有一个长宽取小的原则,例如原图是 100*10,你传入的是 10*2,那么Nginx会给你生成 10*1 的图片
。生成缩略图只是 image_filter 功能中的一个,它一共支持 4 种参数:
-
test:返回是否真的是图片
-
size:返回图片长短尺寸,返回 json 格式数据
-
corp:截取图片的一部分,从左上角开始截取,尺寸写小了,图片会被剪切
-
resize:缩放图片,等比例缩放
Nginx 生成缩略图优缺点
优点:
-
根据传入参数即可生成各种比例图片
-
不占用任何硬盘空间
缺点:
-
消耗 CPU
-
访问量大将会给服务器带来比较大的负担
建议:
生成缩略是个消耗 CPU 的操作,如果访问量比较大的站点,最好考虑使用程序生成缩略图到硬盘上,或者在前端加上 Cache缓存或者使用 CDN。
好了,今天就聊到这儿吧!小伙伴们可以在下方留言。别忘了给个在看和转发,让更多的人看到,一起学习一起进步!!
先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以扫码领取!
![img](https://img-blog.csdnimg.cn/img_convert/9bac6a46a83f52de73b0fb7bb127a4fe.jpeg)
总结
面试前的“练手”还是很重要的,所以开始面试之前一定要准备好啊,不然也是耽搁面试官和自己的时间。
我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。
面试题及解析总结
大厂面试场景
知识点总结
Gcq-1711476386902)]
大厂面试场景
[外链图片转存中…(img-FSGY7X2T-1711476386902)]
知识点总结
[外链图片转存中…(img-ikFmEvfk-1711476386902)]
需要更多Java资料的小伙伴可以帮忙点赞+关注,点击传送门,即可免费领取!