buaazp / zimg

A lightweight and high performance image storage and processing system.
http://zimg.buaa.us
BSD 3-Clause "New" or "Revised" License
2.69k stars 402 forks source link

Support max_pixel setting when zoom up #122

Open qq528 opened 9 years ago

qq528 commented 9 years ago

按照文档对参数p=0,1,2,3的说明,试了下: http://demo.buaa.us/5f189d8ec57f5a5a0d3dcba47fa797e2?w=1280&h=720&p=0 http://demo.buaa.us/5f189d8ec57f5a5a0d3dcba47fa797e2?w=1280&h=720&p=1 http://demo.buaa.us/5f189d8ec57f5a5a0d3dcba47fa797e2?w=1280&h=720&p=2 按说明应该每个参数下的图片都会不一样,但是上面的链接中p=1 ,2的结果一样;p=0也没有拉伸到1280X720,请问这个是本身就这样呢?还是我理解有误? 另外,源码中,这块代码逻辑似乎有些问题? default

buaazp commented 9 years ago

demo.buaa.us这台服务器上启动的zimg是配置了不允许放大选项的,而你给的参数w=1280是大于原始图片的宽度640的,所以不管你选的p=多少,都不可能返回大于原始宽度的图片。建议使用小于图片尺寸的参数进行测试,或者自己起一个打开放大功能的实例。

这是因为有人会发一些w=100000000&h=9999999999这样的恶意请求来导致我的服务器内存爆掉。

代码里log显示错误可能真的是当时手误没发现,我明天仔细检查一下更新下代码。

今天喝多了,不敢乱改。。。

qq528 commented 9 years ago

嗯 所以我上次说的加上max_width max_height的配置项 来避免恶意的请求。普通的放大缩小还是很有用,所以直接禁用放大功能也是不合适的。

buaazp commented 8 years ago

已增加max_pixel配置项,允许放大请求的同时会限制最大尺寸,过大将会返回错误。 此功能将在下个版本合并至master分支。