2015-12-16 27 views
5

Tôi muốn sử dụng tên miền phụ thay vì url trực tiếp vào nhóm s3 của tôi tại amazon.com. Vì vậy, thay vì tải xuống hình ảnh qua url như http://bucket-images.s3-eu-west-1.amazonaws.com/path/to/image.png Tôi muốn sử dụng http://assets.domain.com/path/to/image.png. Tôi cố gắng thiết lập một CNAME như thế này:CNAME để s3 xô amazon

CNAME assets domain.com bucket-images.s3-eu-west-1.amazonaws.com 

Nhưng sau khi cài đặt CNAME này tôi nhận được lỗi như vậy từ amazon, khi tôi truy cập vào tên miền:

<Error> 
    <Code>NoSuchBucket</Code> 
    <Message>The specified bucket does not exist</Message> 
    <BucketName>assets.domain.com</BucketName> 
    <RequestId>45646DFSDFSFASDF</RequestId> 
    <HostId> 
     dfasdcvcvd546456454ds5fasdf4ad5f64asdfasdfccdfgvggtg 
    </HostId> 
</Error> 

Trên đây họ đang nói để thay đổi bucketname : https://forums.aws.amazon.com/message.jspa?messageID=237562 Nhưng điều đó không có ý nghĩa. Tôi đã làm việc trên một dự án trước đó, người đã sử dụng một tên miền hoàn toàn khác với tên miền phụ. Vì vậy, có phải là một cách ... Bất cứ ai có thể giúp tôi ra?

+1

tên của xô là gì, và làm bạn phiền cho chúng tôi biết toàn bộ miền tham gia vì vậy chúng tôi có thể có một cái nhìn và xem liệu nó có phân giải đúng cách qua DNS không? –

Trả lời

9

Đối với S3 bạn cần CNAME và tên xô để phù hợp:

Tên xô phải giống như CNAME. Vì vậy, http://images.johnsmith.net/filename sẽ là giống như http://images.johnsmith.net.s3.amazonaws.com/filename nếu một CNAME được tạo bản đồ images.johnsmith.net để images.johnsmith.net.s3.amazonaws.com

nên trong ví dụ cụ thể của bạn, bạn cần phải đặt tên cho xô assets.domain.com .

http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingCustomURLs

Nếu bạn cần linh hoạt hơn, bạn có thể tạo một bản phân phối CloudFront cho xô S3 của bạn và chỉ định một CNAME để phân phối CloudFront của bạn.

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html

+1

Cloudfront, đúng vậy !! Cảm ơn rất nhiều. –