私はAmazonEC2Ireland(Ubuntu)でホストされているプロジェクトを持っています。
私はCodeIgniterで開発しており、S3を使用してファイルを保存したいと考えています。
私はCodeIgniterでS3を使用するために3つまたは4つの特定のライブラリを使用しましたが、どれも機能していません。公式のAWSSDKfor PHPを試しましたが、互換性テストは問題ありませんが、サンプルが機能しません。問題はS3へのアクセスだと思います。
S3 Managementで3つのバケットを作成し、2つはアイルランド、1つは米国標準で作成し、ブラウザー、S3 Organizer(S3Fox)、Cyberduckでファイルにアクセスできます。しかし、私は自分のプロジェクトにアクセスしません。
誰でも私を助けることができますか?
私の悪い英語でごめんなさい...
コントローラーamazona.php:
<?php defined('BASEPATH') OR exit('No direct script access allowed');
class Amazona extends CI_Controller {
var $bucket = 'cubito';
function __construct()
{
parent::__construct();
$this->load->library('S3');
}
function index()
{
/* $data['files'] = $this->s3->getBucket('cubito'); */
$data['texto'] = "prueba";
$this->load->view('amazona', $data);
}
}
?>
amazona.phpを表示:
<html>
<head>
<title>prueba</title>
</head>
<body>
<a href="http://cubito.s3.amazonaws.com/imagen.jpg">imagen</a>
<img src="http://cubito.s3.amazonaws.com/imagen.jpg" />
<p><?php echo($texto); ?></p>
<p><?php echo($this->s3->listBuckets()); ?></p>
</body>
</html>
バケットポリシーを追加しましたが、それでも機能しません。
{
"Version": "2008-10-17",
"Id": "Policy1351373775750",
"Statement": [
{
"Sid": "Stmt1351373767997",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::cubito",
"arn:aws:s3:::cubito/*"
]
}
]
}