Amazon S3: Các trang web tĩnh: Miền tùy chỉnh hoặc Miền phụ


79

Amazon.com vừa thông báo rằng người ta có thể lưu trữ các trang web tĩnh trong bộ chứa S3. Tôi đã truy cập trang thiết lập của họ tại http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?WebsiteHosting.html và tạo một nhóm cho trang web tĩnh của tôi và nó hoạt động tốt. Tôi có một URL có dạng http: // [ tên nhóm của tôi ] .s3-website-us-west-1.amazonaws.com /.

Tuy nhiên, tôi muốn trỏ miền phụ mà tôi sở hữu (ví dụ: static.mydomain.com) đến trang web tĩnh của tôi tại Amazon S3. Có ai đã tìm ra cách để làm điều đó?

Tôi đánh giá cao bất kỳ giúp bạn có thể cho tôi.

Câu trả lời:


182

Hóa ra là để làm cho nó hoạt động, bạn không thể chỉ ánh xạ bất kỳ miền phụ tùy ý nào vào bất kỳ nhóm tùy ý nào. Tên miền phụ đủ điều kiện phải giống với tên nhóm S3 .

  1. Giả sử tên trang web của bạn là static.mydomain.com . Sau đó, bạn cần tạo một thùng S3 với cùng tên đó, có tên static.mydomain.com .
  2. Sau khi bạn định cấu hình nhóm đó làm trang web tĩnh S3, nó sẽ có một URL được gán cho nó giống như http://static.mydomain.com.s3-website-us-east-1.amazonaws.com .
  3. Truy cập máy chủ lưu trữ miền của bạn và ánh xạ miền phụ của bạn tới URL từ bước 2. Trong enom.com, điều đó có nghĩa là ánh xạ máy chủ lưu trữ " tĩnh " tới địa chỉ " static.mydomain.com.s3-website-us-west-1.amazonaws .com "dưới dạng bản ghi CNAME.

Cảm ơn UriahDavid đã gợi ý. Cuối cùng tôi đã nhận được câu trả lời của mình tại diễn đàn Amazon AWS .


Tôi không biết. Bạn sẽ phải thử nó. Ngoài ra, bạn có thể sẽ được cõng chứng chỉ SSL của Amazon chứ không phải chứng chỉ của bạn.
Jay Godse

2
bạn thực sự chỉ có thể trỏ tên của mình tới s3-website-us-east-1.amazonaws.com , nó dường như bỏ qua tên miền phụ và sử dụng tiêu đề HOST http để chỉ định nhóm. Dường như không thành vấn đề nếu hai miền trùng khớp hoặc ngay cả khi miền phụ có mặt.
lynks

@lynks - bạn thậm chí có thể thả khu vực và chỉ cần đi với s3.amazonaws.com
plyawn

@hnprashanth đúng (chỉ sử dụng S3), bạn có thể có tối đa 10 tên miền phụ trỏ đến cùng một vị trí tài nguyên với phân phối CloudFront ... hãy xem docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/…
plyawn

Những công việc này. AWS nêu điều này trong phần Giới thiệu ban đầu, nhưng khi bạn thực hiện tất cả các bước, bạn dễ dàng / có khả năng quên nó. Đây là giải pháp tốt hơn giải pháp lynks cname vì AWS hiện có phí giao dịch cho việc tra cứu cname của mỗi người dùng.
Mike_Laird

5

Đảm bảo rằng bạn tuân theo các quy ước đặt tên nhóm DNS S3 khi tạo nhóm của mình.

Sau đó:

  1. Bật hỗ trợ Trang web S3 cho nhóm bằng Bảng điều khiển quản lý AWS tại Thuộc tính -> Trang web

  2. Đảm bảo các tệp trong nhóm có quyền đọc công khai

  3. Thử trang web bằng cách sử dụng điểm cuối được liệt kê trong Bảng điều khiển quản lý

  4. Thiết lập CNAME của bạn bằng điểm cuối được liệt kê (ví dụ www.example.com CNAME www.example.com.s3-website-us-east-1.amazonaws.com:)


Tôi đã làm tất cả 4 bước. Bước 3 hoạt động. Cname ở bước 4 định cấu hình (với enom.com, thực hiện điều này thành công với các miền phụ khác), nhưng không đánh vào miền phụ s3 của tôi bằng trình duyệt hoặc ping nó không hoạt động. Với heroku.com và blogger.com, bạn phải cho họ biết miền phụ nào của bạn sẽ đánh vào ứng dụng heroku hoặc blogger-blog nào. Các trang web tĩnh S3 dường như không có điều này.
Jay Godse

2
@Jay Godse Tên nhóm hỗ trợ trang web của bạn là gì và khu vực của nó là gì?
Uriah Carpenter

4
  1. Tạo một khu vực được lưu trữ nói mydomain.com. Bạn có thể sử dụng giao diện người dùng DNS30 dựa trên web .
  2. Bây giờ hãy tạo một mục CNAME cho vùng được lưu trữ này.
  3. Thêm bản ghi tài nguyên với chi tiết sau Tên là "mydomain.com" Nhập là "CNAME" Giá trị là "mydomain.com.s3.amazonaws.com" TTl as "trên cấu hình yêu cầu của bạn"

Hy vọng điều này cũng sẽ hoạt động cho static.mydomain.com

Trân trọng-

Udit



3

Làm thế nào về việc sử dụng một dịch vụ DNS, như Tuyến đường 53 mà Amazon cung cấp. Thiết lập nó với CNAME từ miền phụ của bạn đến URL nhóm công khai. Tất nhiên, nếu công ty miền của bạn cung cấp cấu hình CNAME, cấu hình đó có thể hoạt động trực tiếp.


1

Cập nhật 2019: Lưu trữ tên miền phụ tùy chỉnh AWS trong S3

Kể từ hôm nay, các bước sau đã giúp tôi có một miền phụ hoạt động cho trang web tĩnh được lưu trữ trên AWS S3:

  1. Tạo một nhóm với tên miền phụ. Trong ví dụ này www. subtest .mysite.com

xô aws

Lưu ý: Đảm bảo trên tab 'Quyền' của nhóm: -Chặn truy cập công khai (cài đặt nhóm) -Danh sách điều khiển truy cập & chính sách -Bucket được đặt thích hợp để đảm bảo nhóm là công khai. (Giả sử bạn đã làm điều này cho nhóm miền gốc của mình, các cài đặt đó có thể được sao chép trên nhóm miền phụ này)

Quyền nhóm AWS

  1. Tải lên tệp index.html trong nhóm

tệp chỉ mục trong nhóm s3

  1. Tạo bản ghi CNAME với nhà cung cấp miền của bạn Bản ghi CNAME trong namecheap
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.