在 AWS S3 中调整图像大小

bod*_*ruk 7 php amazon-s3 amazon-web-services

我有一个 PHP REST API,用于托管 Amazon S3 中的所有图像。我正在寻找使用 GET 参数调整图像大小的插件或技巧。例如:

http://my-bucket.s3.amazon.com/image.jpg?width=300&height=300
Run Code Online (Sandbox Code Playgroud)

我找到了这个插件,但我团队的一名成员说它是基于 ASP.NET 的,不适合我的 PHP API 项目。我应该使用托管在 EC2 中的脚本来调整这些图像的大小吗?还有其他方法吗?欢迎提出想法。

谢谢!

Eri*_*son 3

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

http://example.com/images/image.jpg?width=300&height=300

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

祝你好运!

[1] https://httpd.apache.org/docs/current/mod/mod_rewrite.html

[2] http://phpthumb.sourceforge.net/