【转】Amazon S3 使用和操作(s3cmd/PHP class)

Saturday, January 30, 2010

Amazon
S3

是付費的網路磁碟服務, 而且可以透過 Web 直接將檔案拉下來, 沒有最低消費, 用多少收多少, 單純做備份, 收費算是蠻便宜的, 有興趣可以用
Amazon Web Services Simple Monthly
Calculator

算算看(我算自己的資料備份, 一個月下來應該不用 $100 台幣).

方便操作 Amazon S3 的工具

s3cmd 的使用:

  1. 申請完 Amazon S3 帳號後會拿到兩組 key,一組是 access_key,一組是 secret_key
  2. $ s3cmd --configure 設定 access_key 和 secret_key
  3. $ s3cmd mb s3://BUCKET_NAME (Create Bucket)
  4. $ s3cmd put /PATH/FILENAME s3://BUCKET_NAME/FILENAME (將檔案上傳到 Bucket
    內)
  5. $ s3cmd del s3://BUCKET_NAME/FILENAME (刪除檔案)

要讓人可以下載, 使用 -P 的參數

  1. $ s3cmd put -P /PATH/FILENAME s3://BUCKET_NAME/FILENAME # 可公開下載
  2. 下載處會在: http://s3.amazonaws.com/BUCKET_NAME/FILENAME
    http://BUCKET_NAME.s3.amazonaws.com/FILENAME

使用 php-aws 寫的簡易 Script

  1. 程式詳見:
    push-to-s3.phps
  2. class.s3.php 取自 svn checkout
    http://php-aws.googlecode.com/svn/trunk/
  3. 修改此檔案中的 define 參數, 就可以 push-to-s3.php abc.tgz 操作(再簡易修改即可於網頁上傳資料時,
    順便多傳一份去備份或取用)
  4. 何謂 Bucket 和 Object, 意思就是這樣: http://s3.amazonaws.com/$bucket/$object

關於 Amazon S3 的其它應用

  1. Building a Small Business Backup System Using Amazon
    S3
  2. 設定 media.DOMAIN_NAME CNAME 成 media.DOMAIN_NAME.s3.amazonaws.com,
    就可以 media.DOMAIN_NAME/FILENAME 直接存取, 詳細可見: Scalable Media Hosting
    with Amazon
    S3
  3. (這是拿Amazon S3 當自己的 Web server 來存取使用, 當然 資料傳輸費的錢還也是要付的)

This entry was tagged Linux

comments powered by Disqus

© 2009-2013 lxneng.com. All rights reserved. Powered by Pyramid

go to Top