S3の契約からFirefoxでの簡単な操作も試みたので次はPHPから操作してみる。
今回利用したのは、google codeで公開されている"amazon-s3-php-class"(Standalone Amazon S3 REST implementation for PHP 5)を使った。
他にもいくつかライブラリを見つけたので試したのだけど、これが一番使いやすかった。
以下、簡単な例をふまえて...。
例えば、S3上に"hideack.s3trial"というバケットを作ってそこにローカルにあるファイル "yasu.jpg" をアップロードする。
加えてアップロードしたファイルを特に権限設定無く誰でもダウンロードできる様にしてみる。
<?php require_once 'S3.php'; // 今回入手したamazon-s3-php-class $accesskey = '***'; // S3のaccesskeyを設定 $secretkey = '***'; // S3のsecretkeyを設定 try{ $s3 = new S3($accesskey, $secretkey); $s3->putBucket('hideack.s3trial', S3::ACL_PUBLIC_READ); $s3->putObjectFile('/Users/hideack/tmp2/yasu.jpg', 'hideack.s3trial', 'yasu.jpg', S3::ACL_PUBLIC_READ); } catch(Exception $e){ print_r($e); } ?>
アップロードはこれだけ。
実際にアップロードできたかブラウザから確認してみる。
前の記事で記載した様に、S3にアップロードしたファイルはパブリックアクセスできる設定さえしてあれば、ブラウザからでも簡単にアクセスできる。
なお、サンプルは深く気にしない様に。
かなり簡単に使えてかなり感動した。
現状、S3のホストがアメリカ本国(テキサス?) or ヨーロッパになるので多少ディレイが激しいのだけど、レスポンス速度が大きく要求されない要素なら十分利用できるのではないだろうか。
過去の記事は以下参照。
Amazon S3(Amazon Simple Storage Service)を使ってみる - Firefoxプラグインで操作