2017-02-08 10 views
3

現在、Laravel 5.3の画像アップロードシステムはこのように動作します。AWS S3:laravel 5.3のラムダを使用した画像のサイズ変更5.3

1.ユーザーが画像をアップロードします。

2. imagickライブラリを使用してイメージをサイズ変更します。

3. AWS S3で元の画像と切り取った画像を保存します。

これはうまくいきましたが、AWSラムダで2番目のステップ(画像のサイズ変更)を移動したいのですが、AWSラムダのphpとの統合については何も見つかりませんでしたが、公式文書で利用できます。

私の機能を実現するために他のサービス(awsラムダを除く)がありますか?

答えて

3

AWS LambdaでPHPなどの言語を使用できますが、NodeJSラッパー内にカプセル化する必要があります。

幸いにも、AWSはこれを行う方法の公式、非常に簡単なガイドを提供します:https://aws.amazon.com/blogs/compute/scripting-languages-for-aws-lambda-running-php-ruby-and-go/

さらに、あなたは(前述の記事で説明したように手動でPHPディストリビューションを構築していないことで)いくつかの時間を節約したい場合は、次のDockerコンテナを使用できます。https://github.com/dannylinden/aws-lambda-php

+1

お返事いただきありがとうございます – Jabaa

-1

現在のところ、AWSラムダ関数はPHPをサポートしていません。PHP開発者は、イメージのサイズ変更機能用のnodeJSスクリプトを簡単に記述できます。最大で12〜15行になります。同じ機能に多くの例があります。 S3は、ラムダ機能に対して行うことができる自動トリガ設定になります。あなたの仕事は非常に最小限に抑えられます。

しかし、代替ソリューションを探している場合は、ec2インスタンスを使用する必要があります。そこで、1つのREST APIを公開する必要があります。そのAPIはイメージを受け取ってサイズを変更し、最終的に元のイメージとサイズ変更したイメージを2つの異なるAWS s3バケットに格納することができます(推奨されません)。

アプリケーション(php)からs3バケットに直接格納したい場合は、自己サイズ変更のコードを書いて、アプリケーションから別々のバケットに格納します。

+0

AWS LambdaでPHPを使用できます。 –

+0

@NinoŠkopacあなたの答えを説明してください – Jabaa

+1

@kamal Gadepalli私はこの意味を理解していませんでした。「あなたはPHPの開発者として、画像のサイズ変更機能のためにnodeJSスクリプトを簡単に書くことができます」 – Jabaa