請幫我理解通過PHP將文件上傳到Amazon S3服務器的過程。我有一個關於EC2的網站,它將使用PHP腳本將文件從客戶機上傳到S3服務器。我需要了解的是,文件是從客戶端機器直接進入S3還是先上傳到EC2,然後再上傳到S3。如果是第二種選擇,那麼如何優化上傳,以便文件從客戶機直接傳輸到S3?如何通過EC2上的PHP腳本上傳到S3?
1
A
回答
4
可以使用您指定的任何場景將文件上載到S3。
在第一種情況下,文件被上傳到EC2上的PHP後端,然後通過PUT請求將其從PHP上傳到S3。基本上,在這種情況下,所有上傳都通過您的EC2服務器。
第二種選擇是將文件直接從客戶端的瀏覽器上傳到S3。這是通過將POST請求直接用於S3以及可以使用PHP邏輯生成的策略並將其附加到POST請求來完成的。這項政策基本上是一套允許S3接受上傳的規則(沒有任何人能夠上傳任何內容)。
在第二種情況下,EC2上的PHP腳本只需要生成一個有效的上傳策略,但上傳的實際文件將直接轉到S3,而不會通過EC2服務器。
你可以在這裏的第二個方案的詳細信息:
http://aws.amazon.com/articles/1434
即使它不是PHP具體,它說明了如何生成策略,以及如何形成的POST請求。
您也可以通過API文檔閱讀POST請求獲得更多的信息:
http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html
編輯:PHP的官方AWS SDK包含了這樣一個輔助類:http://docs.aws.amazon.com/aws-sdk-php-2/latest/class-Aws.S3.Model.PostObject.html
相關問題
- 1. 直接上傳到S3或通過EC2?
- 2. 將腳本從AWS EC2上傳到S3的Shell腳本
- 3. 直接上傳到S3 vs通過EC2上傳
- 4. 通過Cloudfront上傳到S3
- 5. Android - 通過PHP腳本上傳圖片
- 6. AWS Windows EC2從S3上傳
- 7. 如何通過node.js將Heroku上傳到s3上?
- 8. awscli s3:通過stdin上傳
- 9. 從EC2 VPC內上傳到S3
- 10. 將圖片從EC2上傳到S3
- 11. 從ec2上傳文件到s3
- 12. 通過AFNetworking上傳到Amazon-S3
- 13. 通過CloudFront將內容上傳到S3
- 14. 通過ruby腳本將CSV文件上傳爲Amazon S3
- 15. 通過外部php腳本將圖片上傳到Facebook
- 16. PHP上傳腳本
- 17. php上傳腳本
- 18. NodeJS:通過Knox上傳純文本到S3,我得到statusCode = 505?
- 19. 通過沒有aws-cli的shell腳本上傳到S3,可能嗎?
- 20. 上傳到雲文件或S3跳過腳本主機
- 21. 上傳文本文件到谷歌上傳通過PHP FTP PUT
- 22. 如何通過燒瓶上傳文件到ec2實例
- 23. 無法通過PHP將1GB文件上傳到Amazon S3表單
- 24. 如何將上傳的圖像存儲到AWS上的PHP S3
- 25. 如何通過PHP文件上傳到MySQL上傳文本,pdf,doc,zip文件
- 26. 如何通過表單數據將文件上傳到amzon s3?
- 27. 如何將.jar上傳到S3並通過maven使用它?
- 28. 如何通過SSL將文件直接上傳到S3?
- 29. 如何通過samba將文件上傳到Amazon S3服務器?
- 30. 如何通過nodejs從Angularjs上傳文件到s3
謝謝!正是我需要知道的。 –
了不起的信息!但作爲無能的程序員,你是否知道我可以看到的現有實現?任何開源項目? – Paolo