Setting up a CNAME for an S3 bucket using Amazon R

2020-05-29 03:23发布

I need the following url

http://liangpai.s3.amazonaws.com/uploadImage/shareImage/2012-10/506dc1ef71dcf.png

showing as:

http://imgs.liangpai.me/uploadImage/shareImage/2012-10/506dc1ef71dcf.png

My S3 bucket name is “liangpai”. On Route 53, I created a new CNAME named “imgs”, the value I entered is “liangpai.s3.amazonaws.com”

After this I don’t see the S3 web link changes to my domain link.

Anything wrong here?

Thanks for your advice!

3条回答
该账号已被封号
2楼-- · 2020-05-29 03:24

Try this

Using your own bucket CNAME:

echo S3::getAuthenticatedURL("s3bucket.mydomain.com", $uri, 3600, true);

but you putobject file check for read for Everyone premisssion type:

S3::ACL_PUBLIC_READ

$s3->putObjectFile($tmp, $bucketname , $path.$filename, S3::ACL_PUBLIC_READ)

查看更多
我欲成王,谁敢阻挡
3楼-- · 2020-05-29 03:25

Method 1 : S3 direct CNAME by bucket name

You can create a CNAME record by bucket name following these steps.

  1. Create a bucket name using the same name you will use for your dns entry. i.e. subdomain.mydomain.net

  2. Create a cname record for subdomain.mydomain.net to s3.amazonaws.com

  3. Set permissions on your bucket based on the access you plan to grant

Method 2 : Static Website on S3

If you are serving static content such as images, files, etc. you can use "Static Website Hosting" for your S3 bucket.

Select your bucket by clicking the bucket icon (enter image description here) and select the "properties" tab on the right and expand "Static Website Hosting". In the Static Website Hosting panel, select the radio button to "Enable website hosting" and set an index and error document. It this point, you will see an "Endpoint" name in this panel. Simple create a DNS CNAME record with the endpoint as the value. You can read the entire Amazon Walkthrough here.

enter image description here

查看更多
成全新的幸福
4楼-- · 2020-05-29 03:50

S3 CNAMEs require the bucket name to match the host name. If you want S3 to serve from imgs.langpai.me, you need to create a bucket named imgs.langpai.me. See the S3 documentation for more.

You could create a CloudFront distribution to answer to imgs.langpai.me (see CloudFront CNAME support) have it and forward requests to langpai.s3.amazonaws.com. This would, of course, also incur CloudFront charges.

查看更多
登录 后发表回答