Php 在AWS S3中调整图像大小

Php 在AWS S3中调整图像大小,php,amazon-web-services,amazon-s3,Php,Amazon Web Services,Amazon S3,我有一个PHP REST API,它托管AmazonS3中的所有图像。我正在寻找一个插件,或技巧,以调整图像使用获取参数。例如: http://my-bucket.s3.amazon.com/image.jpg?width=300&height=300 我找到了,但我的团队成员说它基于ASP.NET,不适合我的PHP API项目。我应该使用EC2中的脚本来调整这些图像的大小吗?还有别的办法吗?欢迎提出意见 谢谢 我建议您设置自己的PHP服务,根据您描述的查询字符串值调整图像大小。是的,

我有一个PHP REST API,它托管AmazonS3中的所有图像。我正在寻找一个插件,或技巧,以调整图像使用获取参数。例如:

http://my-bucket.s3.amazon.com/image.jpg?width=300&height=300
我找到了,但我的团队成员说它基于ASP.NET,不适合我的PHP API项目。我应该使用EC2中的脚本来调整这些图像的大小吗?还有别的办法吗?欢迎提出意见


谢谢

我建议您设置自己的PHP服务,根据您描述的查询字符串值调整图像大小。是的,PHP服务可以托管在AWS EC2或其他托管平台上。服务需要接收查询字符串,例如:

这需要配置(可能使用mod_rewrite[1])以接收图像的名称(例如:“image.jpg”),并将查询字符串大小值传递到PHP脚本中。然后,脚本将在S3上找到您的图像,使用图像库(如ImageMagick/PHP GD或PHPThumb[2])调整图像大小,将其保存(或不保存)回S3,并在原始请求时将图像数据传递回S3

祝你好运

[1]


[2] 有两个选项可用:

1)LAMBDA:如果您想使用AWS服务本身,LAMBDA是一个很好的解决方案

AWS lambda代码可以根据配置的值生成缩略图。AWS Lambda控制台本身有一些功能,您可以将其调整到工作系统中。除非您登录,否则控制台的链接将无法工作

2)第三方:您可以像

timtumb

TimThumb是一个简单、灵活的PHP脚本,用于调整图像大小。(确保您的目录具有公共访问权限)

想象:

几年来最好的图像处理库。面向对象,经过单元测试,易于使用,并获得MIT许可。如果有人知道另一个质量相同的产品,我会感到惊讶,我也想知道

EasyHPThumbnail


EasyPhpThumbnail Image Effects类允许您动态处理GIF、JPG和PNG的图像处理和PHP缩略图生成。该类是免费的,100%基于PHP,可用于PHP4(从4.3.11开始)和PHP5,易于使用,并通过60多次操作提供了大量功能:

为了更好地使用AWS cloudfront或非AWS,您可以为特定文件使用良好的CDN服务,如将timthumb放在CDN上(确保服务器类型为pull server CDN)。蒂姆姆姆有一个很大的安全漏洞