Amazon Simple Storage Service-Create Bucket in PHP
3
cyberhitesh
Software Requirements:
Crypt_HMAC:
http://pear.php.net/package/Crypt_HMAC
HTTP_REQUEST:
http://pear.php.net/package/HTTP_Request
PEAR:
http://pear.php.net/
Crypt_HMAC:
http://pear.php.net/package/Crypt_HMAC
HTTP_REQUEST:
http://pear.php.net/package/HTTP_Request
PEAR:
http://pear.php.net/
require_once 'Crypt/HMAC.php';
require_once 'HTTP/Request.php';
define ('DATE_RFC822',"D, d M Y G:i:s O");
define ('S3_URL',"http://s3.amazonaws.com/");
define ('KEYID',"Amazon Account Key ID");
define ('SECRETKEY',"Amazon Account Secret Key");
define ('PRIVATE',"private");
define ('PUT',"PUT");
function create_bucket($bucketname, $method = PUT, $acl = PRIVATE)
{
$httpDate = gmdate(DATE_RFC822);
$stringToSign = "$method\n\n\n$httpDate\nx-amz-acl:$acl\n/$bucketname";
$hasher =& new Crypt_HMAC(SECRETKEY, "sha1");
$signature = hex2b64($hasher->hash($stringToSign));
$req =& new HTTP_Request(S3_URL . $bucketname);
$req->setMethod($method);
$req->addHeader("Date", $httpDate);
$req->addHeader("Authorization", "AWS " . KEYID . ":" . $signature);
$req->addHeader("x-amz-acl", $acl);
$req->sendRequest();
if ($req->getResponseCode() == 200)
{
echo "<br />Bucket created Successfully";
}
else
{
echo "<br />Bucket Not Created Successfully";
}
}
create_bucket("Bucket Name",PUT,PRIVATE);





There are currently no comments for this snippet.