1. 개요
S3 버킷에 파일을 업로드하는 REST API
2. 스크립트
date=`date +%Y%m%d` dateFormatted=`date -R` s3Bucket="${3}" fileName="${4}" relativePath="/${s3Bucket}/${fileName}" contentType="application/octet-stream" stringToSign="PUT\n\n${contentType}\n${dateFormatted}\n${relativePath}" s3AccessKey="${1}" s3SecretKey="${2}" signature=`echo -en ${stringToSign} | openssl sha1 -hmac ${s3SecretKey} -binary | base64` curl -X PUT -T "${fileName}" \ -H "Host: ${s3Bucket}.s3.amazonaws.com" \ -H "Date: ${dateFormatted}" \ -H "Content-Type: ${contentType}" \ -H "Authorization: AWS ${s3AccessKey}:${signature}" \ http://${s3Bucket}.s3.amazonaws.com/${fileName}
3. 실행
입력값은 총 4개이다
- access key
- secrect access key
- 버킷 이름
- 파일 이름
4. 참고
http://www.tothenew.com/blog/file-upload-on-amazon-s3-server-using-curl-request/