2013-10-11 71 views
0

我正嘗試使用Amazon S3來存儲我的圖像。 我所做到目前爲止通過PEAR安裝AWS SDK(鏈接:http://docs.aws.amazon.com/aws-sdk-php-2/guide/latest/installation.htmlAmazon S3基本操作不起作用

然後我去了第二個步驟,創建客戶端:

<?php 

// Include the SDK using the Composer autoloader 
require 'vendor/autoload.php'; 

use Aws\S3\S3Client; 

// Instantiate the S3 client with your AWS credentials and desired AWS region 
$client = S3Client::factory(array(
    'key' => 'your-aws-access-key-id', 
    'secret' => 'your-aws-secret-access-key', 
)); 

我的按鍵設置是否正確......。

然後我想創建這樣一個桶來測試這一切:

$bucket = 'my-bucket'; 
try{ 
    $result = $client->createBucket(array(
     'Bucket' => $bucket 
    )); 

    // Wait until the bucket is created 
    $client->waitUntil('BucketExists', array('Bucket' => $bucket)); 
} 
catch(Exception $e){ 
    var_dump($e->getMessage()); 
} 

但我總是得到這樣的錯誤:

The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again.

我覺得我的SDK安裝不正確.. 。 誰能幫我這個?我使用的是無業遊民,所以我在我的根文件夾安裝了AWS SDK使用此命令:

sudo pear -D auto_discover=1 install pear.amazonwebservices.com/sdk

我是安裝好消息。

我也做了我的$客戶端的var_dump。我的迴應鏈接:http://pastebin.com/KqkEiKGs
現在不,如果你用的東西吧...(我的按鍵被隱藏)

回答

2

你的錯誤消息指出它 - 你試圖使用不唯一名稱對於你的水桶,你應該使用更多獨特的名字。而且,是的,存儲桶名稱必須是,在所有亞馬遜S3(不僅是您的帳戶)中都是唯一的。您可以閱讀更多關於here的信息。