我正在使用PHP开发API,我必须使用resize上传图像。如何在上传到Amazon S3存储桶时调整图像大小?
我必须上传1920 * 1080图片的最大尺寸
答案 0 :(得分:2)
AWS方式'将为您上传图像的存储桶创建一个s3事件通知,然后每次将新文件放入存储桶时调用Lambda函数 - lambda函数将执行调整大小并将新图像保存到不同的位置或不同的名称。
您的所有PHP应用程序需要做的就是' put'存储桶中的对象,让lambda完成剩下的工作 - 非常肯定互联网上有很多例子可以做到这一点。
答案 1 :(得分:0)
在将图像上传到S3之前,必须首先使用PHP在本地调整图像大小。您可以使用已有的PHP库进行大小调整,例如php-image-resize。
答案 2 :(得分:0)
我建议使用像Cloudinary这样的图像优化服务,它可以直接连接到AWS桶。但只有https://support.cloudinary.com/hc/en-us/articles/202520492-Can-images-be-stored-in-my-own-S3-bucket-
中所述的付费方案才能提供此功能另一种方法可以是托管Imgur的克隆;您自己的S3上的另一个图像优化服务。此处说明的流程:https://hackernoon.com/building-a-highly-scalable-imgur-clone-with-lambda-and-s3-aaf9da422c3e