这个问题让我发疯,当我在本地服务器上测试我的codeigniter应用程序时一切正常然后我将它上传到AWS EC2(Ubuntu服务器)但是当我尝试从AWS EC2上传图像到AWS S3时,我得到了错误500.我使用库https://github.com/psugand/CodeIgniter-S3,有人使用aws s3和aws ec2与codeigniter应用程序,我需要它的建议。
运行此代码时出现错误:
$this->load->library('s3');
$this->s3->putObject($this->s3->inputFile($file,false),
$Bucket,
$name,
self::ACL_PUBLIC_READ);
我认为codeigniter没有与AWS S3连接。
谢谢
答案 0 :(得分:1)
由于权限问题导致所有这一切都发生,请确保服务器中的文件的所有权限必须为755,以便更改必须使用的权限
这是针对单个文件的
chmod 755 ./name/of/file
这是为了更改文件夹中的多个文件或所有文件
chmod 755 -R /folderlocation/andname
如果权限被拒绝,请使用 sudo
答案 1 :(得分:0)
您目前使用S3设置的存储分区策略是什么?您是否正在使用可能与本地环境冲突到云环境的单独IAM帐户(访问密钥,权限等)。
如果您能够(非常)暂时删除安全限制,直到您能够成功连接,您就能确定导致错误的确切原因。然后,您可以提高您个人定义的安全级别并找到问题(我会在Bucket Policies上下注)
如果您已启动进入VPC,您的实例可能也存在可互联网路由的问题,这是AWS内的新环境吗?