Chuyển tới nội dung
Home » Amazon S3 Web Server | Welcome To My Website

Amazon S3 Web Server | Welcome To My Website

How to host a static website on AWS S3 | Host your static website on AWS S3 in 5 minutes

Cách bắt đầu sử dụng

Tìm hiểu cách thức hoạt động của Amazon S3

Tìm hiểu thêm về phân tích, quản lý dữ liệu, truy vấn tại chỗ, lớp lưu trữ, bảo mật, v.v.

Đăng ký một tài khoản miễn phí

Miễn phí sử dụng hoặc miễn phí dùng thử khi tìm hiểu các tính năng cơ bản và hoạt động xây dựng trên AWS.

Kết nối với chuyên gia

Từ các chương trình cấp độ phát triển đến cấp độ doanh nghiệp, được hỗ trợ phù hợp vào đúng thời điểm.

Use Amazon S3 website hosting to host without a single web server

Amazon Simple Storage Service (Amazon S3) can host static websites without a need for a web server. The website is highly performant and scalable at a fraction of the cost of a traditional web server. Amazon S3 is storage for the cloud, providing you with secure, durable, highly scalable object storage. A simple web services interface allows you to store and retrieve any amount of data from anywhere on the web. Each S3 object can be zero bytes to 5 TB in file size, and there’s no limit to the number of Amazon S3 objects you can store.

You start by creating an Amazon S3 bucket, enabling the Amazon S3 website hosting feature, and configuring access permissions for the bucket. After you upload files, Amazon S3 takes care of serving your content to your visitors.

Amazon S3 provides HTTP web-serving capabilities, and the content
can be viewed by any browser. You must also configure
Amazon Route 53

example.com

is the domain.

Amazon S3 website hosting

In this solution, there are no Windows or Linux servers to manage, and no need to provision machines, install operating systems, or fine-tune web server configurations. There’s also no need to manage storage infrastructure (such as, SAN, NAS) because Amazon S3 provides practically limitless cloud-based storage. Fewer moving parts means fewer troubleshooting headaches.

Step 2: Enable static website hosting

After you create a bucket, you can enable static website hosting for your bucket. You can create a new bucket or use an existing bucket.

To enable static website hosting
  1. Sign in to the AWS Management Console and open the Amazon S3 console at https://console.aws.amazon.com/s3/

  2. In the Buckets list, choose the name of the bucket that you want to enable static website hosting for.

  3. Choose Properties.

  4. Under Static website hosting, choose Edit.

  5. Choose Use this bucket to host a website.

  6. Under Static website hosting, choose Enable.

  7. In Index document, enter the file name of the index document, typically


    index.html

    .

    The index document name is case sensitive and must exactly match the file name of the HTML index document that you plan to upload to your S3 bucket. When you configure a bucket for website hosting, you must specify an index document. Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders. For more information, see Configuring an index document.

  8. To provide your own custom error document for 4XX class errors, in Error document, enter the custom error document file name.

    The error document name is case sensitive and must exactly match the file name of the HTML error document that you plan to upload to your S3 bucket. If you don’t specify a custom error document and an error occurs, Amazon S3 returns a default HTML error document. For more information, see Configuring a custom error document.

  9. (Optional) If you want to specify advanced redirection rules, in Redirection rules, enter JSON to describe the rules.

    For example, you can conditionally route requests according to specific object key names or prefixes in the request. For more information, see Configure redirection rules to use advanced conditional redirects.

  10. Choose Save changes.

    Amazon S3 enables static website hosting for your bucket. At the bottom of the page, under Static website hosting, you see the website endpoint for your bucket.

  11. Under Static website hosting, note the Endpoint.

    The Endpoint is the Amazon S3 website endpoint for your bucket. After you finish configuring your bucket as a static website, you can use this endpoint to test your website.

How to host a static website on AWS S3 | Host your static website on AWS S3 in 5 minutes
How to host a static website on AWS S3 | Host your static website on AWS S3 in 5 minutes

Tạo S3 bucket trên Amazon S3

Bước 1: Vào AWS Management Console → vào dịch vụ Amazon S3 → chọn Create bucket → nhập Bucket Name mới, bỏ chọn Block all public access → chọn Create bucket.

Bước 2: Sau khi bucket được tạo, bạn vào bucket → vào tab Properties.

Bước 3: Kéo xuống tìm mục Static website hosting → chọn Edit → chọn Enable → chọn Host a static website → trong Index document nhập index.html → Error document nhập error.html hay bất cứ tên nào (mục này chúng ta không sử dụng tới nên chúng ta chỉ nhập cho hợp lệ) → cuối cùng chọn Save changes.

Domain names

For small, non-public websites, the Amazon S3 website endpoint is probably adequate. You can
also use internal DNS to point to this endpoint. For a public facing website, we recommend
using a custom domain name instead of the provided Amazon S3 website endpoint. This way, users can
see user-friendly URLs in their browsers. If you plan to use a custom domain name, your bucket
name must match the domain name. For custom root domains (such as

example.com

),
only Amazon Route 53 can configure a DNS record to point to the Amazon S3 hosted website.

For non-root subdomains (such as

www.example.com

), any DNS service
(including Amazon Route 53) can create a

CNAME

entry to the subdomain. See the Amazon Simple Storage Service Developer
Guide for more details on how to associate domain names with your website.

Configuring static website hosting using the Amazon S3 console

The Amazon S3 website hosting configuration screen in the Amazon S3 console presents additional options to configure. Some of the key options are as follows:

  • You can configure a default page that users see if they visit the domain name directly (without specifying a specific page). (For Microsoft IIS web servers, this is equivalent to


    default.html

    . For Apache web servers, this is equivalent to

    index.html

    .)

  • You can also specify a custom 404- Page Not Found error page if the user stumbles onto a non-existent page.

  • You can enable logging to give you access to the raw web access logs. (By default, logging is disabled.)

  • You can add tags to your Amazon S3 bucket. These tags help when you want to analyze your AWS spend by project.

Build with Me: Launch a website on Amazon S3 | AWS Project
Build with Me: Launch a website on Amazon S3 | AWS Project

Scalability and availability

Amazon S3 is inherently scalable. For popular websites, Amazon S3 scales seamlessly to serve thousands of HTTP or HTTPS requests per second without any changes to the architecture.

In addition, by hosting with Amazon S3, the website is inherently
highly available. Amazon S3 is designed for 99.999999999%
durability, and carries a
service level
agreement

Compare this solution with traditional non-AWS costs for implementing “active-active” hosting for important projects. Active-active, or deploying web servers in two distinct data centers, is prohibitive in terms of server costs and engineering time. As a result, traditional websites are usually hosted in a single data center, because most projects can’t justify the cost of “active-active” hosting.

Step 6: Configure an error document

When you enable static website hosting for your bucket, you enter the name of the error document (for example,

404.html

). After you enable static website hosting for the bucket, you upload an HTML file with this error document name to your bucket.

To configure an error document
  1. Create an error document, for example


    404.html

    .

  2. Save the error document file locally.

    The error document name is case sensitive and must exactly match the name that you enter when you enable static website hosting. For example, if you enter


    404.html

    for the Error document name in the Static website hosting dialog box, your error document file name must also be

    404.html

    .

  3. Sign in to the AWS Management Console and open the Amazon S3 console at https://console.aws.amazon.com/s3/

  4. In the Buckets list, choose the name of the bucket that you want to use to host a static website.

  5. Enable static website hosting for your bucket, and enter the exact name of your error document (for example,


    404.html

    ). For more information, see Enabling website hosting and Configuring a custom error document.

    After enabling static website hosting, proceed to step 6.

  6. To upload the error document to your bucket, do one of the following:

    • Drag and drop the error document file into the console bucket listing.

    • Choose Upload, and follow the prompts to choose and upload the index file.

    For step-by-step instructions, see Uploading objects.

Amazon S3 - Static Website Hosting with Custom Domain and TLS
Amazon S3 – Static Website Hosting with Custom Domain and TLS

Amazon S3 object names

In Amazon S3, a bucket is a flat container of objects. It doesn’t provide a hierarchical organization the way the file system on your computer does. However, there is a straightforward mapping between a file system’s folders/files to Amazon S3 objects. The example that follows shows how folders/files are mapped to Amazon S3 objects. Most third-party tools, as well as the AWS Management Console and AWS Command Line Interface (AWS CLI), handle this mapping transparently for you. For consistency, we recommend that you use lowercase characters for file and folder names.

Hierarchical file system

Configuration basics

Configuration involves these steps:

  1. Open the AWS Management Console.

  2. On the Amazon S3 console, create an Amazon S3 bucket.

    • Choose the AWS Region in which the files will be geographically stored


      . (If your high-availability requirements require that your website must remain available even in the case of a failure of an entire AWS Region, explore the Amazon S3 Cross-Region Replication capability to automatically replicate your S3 data to another S3 bucket in a second AWS Region.) Select a Region based on its proximity to your visitors, proximity to your corporate data centers, and/or your regulatory or compliance requirements (for example, some countries have restrictive data residency regulations).

    • Choose a bucket name that complies with DNS naming conventions.

      If you plan to use your own custom domain or subdomain, such as


      example.com

      or

      www.example.com

      , your bucket name must be the same as your domain or subdomain. For example, a website available at

      http://www.example.com

      must be in a bucket named

      www.example.com

      .

      Note

      Each AWS account can have a maximum of 1000 buckets.

  3. Toggle on the static website hosting feature for the bucket. This generates an Amazon S3 website endpoint.

You can access your Amazon S3-hosted website at the following URL:


http://

.s3-website-.amazonaws.com

How to host static website on AWS S3 | Static Web Hosting on Amazon S3  Step by Step
How to host static website on AWS S3 | Static Web Hosting on Amazon S3 Step by Step

Step 7: Test your website endpoint

After you configure static website hosting for your bucket, you can test your website endpoint.

Note

Amazon S3 does not support HTTPS access to the website. If you want to use HTTPS, you can use Amazon CloudFront to serve a static website hosted on Amazon S3.

For more information, see How do I use CloudFront to serve a static website hosted on Amazon S3?

  1. Under Buckets, choose the name of your bucket.

  2. Choose Properties.

  3. At the bottom of the page, under Static website hosting, choose your Bucket website endpoint.

    Your index document opens in a separate browser window.

You now have a website hosted on Amazon S3. This website is
available at the Amazon S3 website endpoint. However, you might have a domain, such as

example.com

, that you want to use to serve the content from the
website you created. You might also want to use Amazon S3 root domain support to serve
requests for both

http://www.example.com

and

http://example.com

. This requires additional steps. For an example,
see Tutorial: Configuring a static website using a
custom domain registered with Route 53.

Requesting a certificate through ACM

You can create and manage public, private, and imported certificates

To request a certificate:

  1. Add in the qualified domain names (such as


    example.com

    ) you want to secure with a certificate.

  2. Select a validation method. ACM can validate ownership by using DNS or by sending email to the contact addresses of the domain owner.

  3. Review the domain names and validation method.

  4. Validate. If you used the DNS validation method, you must create a


    CNAME

    record in the DNS configuration for each of the domains. If the domain is not currently managed by Amazon Route 53, you can choose to export the DNS configuration file and input that information in your DNS web service. If the domain is managed by Amazon Route 53, you can click “Create record in Route 53” and ACM can update your DNS configuration for you.

After validation is complete, return to the ACM console. Your certificate status changes from Pending Validation to Issued.

AWS Project - How to Create a Static Website for Free Using Amazon S3, Step by Step
AWS Project – How to Create a Static Website for Free Using Amazon S3, Step by Step

Trường hợp sử dụng

Xây dựng hồ dữ liệu

Chạy các ứng dụng phân tích dữ liệu lớn, trí tuệ nhân tạo (AI), máy học (ML) và điện toán hiệu suất cao (HPC) để mở khóa thông tin chuyên sâu về dữ liệu.Tìm hiểu thêm về việc xây dựng hồ dữ liệu trên Amazon S3 »

Sao lưu và khôi phục dữ liệu quan trọng

Đáp ứng các yêu cầu về Thời gian phục hồi mục tiêu (RTO), Điểm phục hồi mục tiêu (RPO) và tuân thủ với những tính năng sao chép mạnh mẽ của S3.Tìm hiểu thêm về sao lưu và khôi phục »

Lưu trữ dữ liệu với chi phí thấp nhất

Chuyển kho lưu trữ dữ liệu sang các lớp lưu trữ của Amazon S3 Glacier để giảm thiểu chi phí, loại bỏ sự phức tạp trong hoạt động và thu thập thông tin chuyên sâu mới.Tìm hiểu thêm về cách lưu trữ với các lớp lưu trữ của S3 Glacier »

Chạy các ứng dụng hoạt động trên đám mây

Xây dựng các ứng dụng hoạt động trên đám mây nhanh chóng, có khả năng di động mạnh mẽ và dựa trên web, có thể tự động thay đổi quy mô theo cấu hình có độ sẵn sàng cao.Tìm hiểu thêm về ứng dụng hoạt động trên đám mây »

Step 3: Edit Block Public Access settings

By default, Amazon S3 blocks public access to your account and buckets. If you want to use a bucket to host a static website, you can use these steps to edit your block public access settings.

Warning

Before you complete this step, review Blocking public access to your Amazon S3 storage to ensure that you understand and accept the risks involved with allowing public access. When you turn off block public access settings to make your bucket public, anyone on the internet can access your bucket. We recommend that you block all public access to your buckets.

  1. Open the Amazon S3 console at https://console.aws.amazon.com/s3/

  2. Choose the name of the bucket that you have configured as a static website.

  3. Choose Permissions.

  4. Under Block public access (bucket settings), choose Edit.

  5. Clear Block all public access, and choose Save changes.

    Warning

    Before you complete this step, review Blocking public access to your Amazon S3 storage to ensure you understand and accept the risks involved with allowing public access. When you turn off block public access settings to make your bucket public, anyone on the internet can access your bucket. We recommend that you block all public access to your buckets.

    Amazon S3 turns off Block Public Access settings for your bucket. To create a public, static website, you might also have to edit the Block Public Access settings for your account before adding a bucket policy. If account settings for Block Public Access are currently turned on, you see a note under Block public access (bucket settings).

Getting started with Amazon S3 - Demo
Getting started with Amazon S3 – Demo

Step 8: Clean up

If you created your static website only as a learning exercise, delete the AWS resources that you allocated so that you no longer accrue charges. After you delete your AWS resources, your website is no longer available. For more information, see Deleting a bucket.

Mở đầu

Đôi khi chúng ta cần một website chỉ thuần mục đích cung cấp thông tin, quảng bá cho một sản phẩm, sự kiện mới, hay một vài trang tài liệu nội bộ của công ty mà nội dung hiếm khi thay đổi thì web tĩnh (static website) là một lựa chọn nhanh gọn nhất. Đơn giản là vậy nhưng để host nó thì anh em cũng phải cần chuẩn bị web server được triển khai trên một trong những môi trường sau: VM, EC2 instance, Docker, ECS, Kubernetes,…

Tuy nhiên đã hướng chuyển dịch “lên mây AWS” thì phải chọn giải pháp nào vừa tối ưu về chi phí, vừa ít tốn công sức quản trị nhất có thể => S3 là dịch vụ hợp lý nhất trong trường hợp này.

Hôm nay mình sẽ hướng dẫn anh em cách triển khai một static website trên S3 bucket để bổ sung vào chuỗi bài viết về S3 trong serie SAA Hands-on Labs.

Lab steps

Task 1: Tạo S3 bucket

1. Truy cập Storage >> S3 từ menu Services

2. Tại giao diện của S3, nhấn chọn Create bucket và điền lần lượt vào các trường sau cho bucket details.

  • Bucket name: đặt tên cho bucket (S3 bucket name mang tính định danh trên tất cả các region của AWS nên phải duy nhất và không trùng lặp).
  • Region: Chọn Singapore (ap-southeast-1)
  • Object ownership: Chọn ACLs disabled

Những phần khác giữ nguyên như mặc đinh và nhấn Create bucket.

3. Sau khi quá trình taọ bucket hoàn tất, hệ thống sẽ tự động chuyển đến giao diện chứa danh sách tất cả các bucket đang có trong tài khoản AWS của bạn.

Task 2: Bật tính năng Static website Hosting trên Bucket

1. Ngay tại giao diện chứa danh sách bucket, nhấn chọn vào bucket name hiepsharing-saa-b-1, chuyển sang tab Properties

2. Cuộn chuột xuống cuối trang, tìm mục Static website hosting và nhấn Edit

3. Lần lượt đọc và nhập nội dung cho các tùy chọn bên dưới:

  • Static website hosting: chọn Enable
  • Hosting type: chọn Host a static website
  • Index document: nhập tên file sẽ làm default index cho web (ví dụ index.html, hoặc muốn thiết lập file nào tùy vào code của anh em).
  • Error document – optional: nội dung này không bắt buộc, ví dụ ở đây mình muốn mọi lỗi phát sinh khi người dùng truy cập website sẽ trả về nội dung file error.html

Sau cùng, nếu thấy mọi thứ ổn rồi thì nhấn Save changes để lưu cấu hình.

4. Nếu quá trình kích hoạt thành công sẽ hiển thị trạng thái Enabled, anh em copy và lưu lại giá trị của Endpoint để sau này truy cập.

Task 3: Thiết lập S3 bucket policy

Tiếp theo ta tiến hành tạo Bucket policy để gán quyền public access cho tất cả các đối tượng trong bucket này.

4. Quay trở lại giao diện chứa danh sách bucket, nhấn chọn vào bucket name hiepsharing-saa-b-1, chuyển sang tab Permissions.

5. Kéo xuống tại mục Bucket policy, nhấn Edit để mở trình soạn thảo Bucket policy editor (dĩ nhiên trống không 😆 ).

Lưu ý: Bucket policy được trình bày dưới dạng ngôn ngữ JSON nên anh em có thể chủ động nghiên cứu thêm bằng 2 công cụ Policy examples hoặc Policy generator được AWS cung cấp.

Hoặc đơn giản trong bài lab này, anh em có thể copy và dán JSON bên dưới vào và thay thế phần Resources bằng chính Bucket ARN của anh em.


"Version": "2012-10-17",


"Statement": [


"Sid": "Statement1",


"Effect": "Allow",


"Principal": "*",


"Action": "s3:GetObject",


"Resource": "arn:aws:s3:::hiepsharing-saa-b-1/*"

Với nội dung JSON trên, mình muốn tạo ra một bucket policy cho phép mọi người có quyền truy cập tất cả các object có trong bucket hiepsharing-saa-b-1

Xem kỹ lại cú pháp của JSON, nếu không có lỗi gì (Errors: 0), nhấn Save changes để tạo policy.

Task 4: Upload source code lên Bucket và kiểm tra hoạt động của website

Phần cuối cùng của lab là upload source code lên bucket và kiểm tra hoạt động website 😛

1. Ở đây anh em có thể tạo hai file index.html và error.html với nội dung đơn giản như sau:

  • index.html

Welcome to HIEPSHARING Blog

How to enable Static Website Hosting on S3 bucket.

  • error.html

404, Page not found!!!

This is sample custom error page.

2. Về cách thức upload đối tượng lên bucket như nào thì mình không lặp lại ở bài viết này nữa, mình đã hướng dẫn chi tiết ở những lab trước, anh em có thể tham khảo lại nhé. Sau khi upload thành công sẽ có hai object trong bucket tương tự như bên dưới:

3. Mở trình duyệt và truy cập vào URL của website Endpoint đã lưu lại ở cuối Task 2, nếu đúng sẽ hiển thị nội dung file index.html tương tự minh họa bên dưới.

4. Cuối cùng, anh em thử truy cập vào một file có tên bất kỳ (không tồn tại trong bucket), AWS S3 sẽ tự động trả về nội dung file error.html đã thiết lập ở Error document trong Task 2

Lời kết

Như vậy là mình đã hoàn thành Triển khai static website trên S3 bucket trên giao diện AWS web console.

Nếu có bất kỳ thắc mắc, góp ý về nội dung bài viết hoặc anh em có thêm những tip hay khác có thể chia sẻ dưới phần bình luận nhé.

Trong thời gian tới, mình sẽ cố gắng bổ sung nhiều lab khác về chủ để S3 vào serie SAA Hands-on Labs, anh em nhớ theo dõi nhé.

Amazon S3

Dịch vụ lưu trữ đối tượng được xây dựng để truy xuất dữ liệu thuộc mọi kích thước và từ mọi nơi

Encrypt data in transit

We recommend you use HTTPS to serve static websites securely. HTTPS is the secure version of the HTTP protocol that browsers use when communicating with websites. In HTTPS, the communication protocol is encrypted using Transport Layer Security (TLS). TLS protocols are cryptographic protocols designed to provide privacy and data integrity between two or more communicating computer applications. HTTPS protects against man-in-the-middle (MITM) attacks. MITM attacks intercept and maliciously modify traffic.

Historically, HTTPS was used for sites that handled financial
information, such as banking and e-commerce sites. However, HTTPS
is now becoming more of the norm rather than the exception. For
example, the percentage of web pages loaded by Mozilla Firefox
using HTTPS has
steadily increased to over 80%

AWS Certificate Manager

Project: How to Host Static Website in AWS S3
Project: How to Host Static Website in AWS S3

Low costs encourage experimentation

Amazon S3 costs are storage plus bandwidth. The actual costs depend upon your asset file sizes, and your site’s popularity (the number of visitors making browser requests).

There’s no minimum charge and no setup costs.

When you use Amazon S3, you pay for what you use. You’re only charged for the actual Amazon S3 storage required to store the site assets. These assets include HTML files, images, JavaScript files, CSS files, videos, audio files, and any other downloadable files. Your bandwidth charges depend upon the actual site traffic. More specifically, the number of bytes that are delivered to the website visitor in the HTTP responses. Small websites with few visitors have minimal hosting costs.

Popular websites that serve up large videos and images incur higher bandwidth charges. The Estimating and Tracking AWS Spend section of this document describes how you can estimate and track your costs.

With Amazon S3, experimenting with new ideas is easy and cheap. If a website idea fails, the costs are minimal. For microsites, publish many independent microsites at once, run A/B tests, and keep only the successes.

Một mùa giáng sinh nữa lại đến, VTI Cloud chúc tất cả mọi người một giáng sinh an lành và hạnh phúc. Để không khí giáng sinh thêm rộn ràng, VTI Cloud xin gửi tới mọi người cách tạo một website đơn giản và ý nghĩa với Amazon S3 để gửi lời chúc đến người thân và người thương.

Yêu cầu trước khi bắt đầu:

  • Có một tài khoản truy cập AWS console và có quyền tạo S3 bucket.

  • Có sẵn source code của website. Bài viết này sẽ là nội dung “Chúc mừng giáng sinh”.

Public static website

Bước 1: Sau khi lưu chúng ta sẽ thấy xuất hiện link truy cập vào website của chúng ta, bạn nhớ copy link này lại để truy cập sau nhé.

Bước 2: Sau đó chúng ta quay trở lại tab Objects và chọn Upload để upload tất cả file của static website của mình lên nhé.

Bước 3: Tiếp theo chúng ta chọn hết tất cả các file → chọn Actions → chọn Actions → chọn Make public.

Tận hưởng thành quả nào! Tạo một website đơn gian chỉ trong vài phút

Và giờ là lúc tận hưởng thành quả, bạn đã có thể sử dụng link ở trên để vào website mình rồi, là link của bài viết này nhé. Dưới đây là một số project cho các bạn tham khảo:

http://vticloud-xmas-tree.s3-website-ap-southeast-1.amazonaws.com/

Nhớ cuộn xuống hết cỡ để xem lời chúc nhé các bạn, Merry Christmas!

http://vticloud-xmas-tree1.s3-website-ap-southeast-1.amazonaws.com/

Deploy a low cost static website on AWS S3
Deploy a low cost static website on AWS S3

Uploading content

On AWS, you can design your static website using your website authoring tool of choice. Most web design and authoring tools can save the static content on your local hard drive. Then, upload the HTML, images, JavaScript files, CSS files, and other static assets into your Amazon S3 bucket. To deploy, copy any new or modified files to the Amazon S3 bucket. You can use the AWS API, SDKs, or CLI to script this step for a fully automated deployment.

You can upload files using the AWS Management Console. You can also use AWS partner offerings such
as CloudBerry, S3 Bucket Explorer, S3 Fox, and other visual management tools. The easiest way,
however, is to use the AWS CLI

Về VTI Cloud

VTI Cloud là Đối tác cấp cao (Advanced Consulting Partner) của AWS, với đội ngũ hơn 50+ kỹ sư về giải pháp được chứng nhận bởi AWS. Với mong muốn hỗ trợ khách hàng trong hành trình chuyển đổi số và dịch chuyển lên đám mây AWS, VTI Cloud tự hào là đơn vị tiên phong trong việc tư vấn giải pháp, phát triển phần mềm và triển khai hạ tầng AWS cho khách hàng tại Việt Nam và Nhật Bản.

Xây dựng các kiến trúc an toàn, hiệu suất cao, linh hoạt, và tối ưu chi phí cho khách hàng là nhiệm vụ hàng đầu của VTI Cloud trong sứ mệnh công nghệ hóa doanh nghiệp.

Trong mô-đun này, bạn sẽ đặt cấu hình cho Amazon Simple Storage Service (S3) để lưu trữ các tài nguyên tĩnh cho ứng dụng web của mình. Trong các mô-đun tiếp theo, bạn sẽ thêm chức năng động vào những trang này bằng cách sử dụng JavaScript để gọi API RESTful từ xa được dựng bằng AWS Lambda và Amazon API Gateway.

Kiến trúc của mô-đun này rất đơn giản. Tất cả nội dung web tĩnh của bạn bao gồm HTML, CSS, JavaScript, hình ảnh và các tệp khác sẽ được lưu trữ trong Amazon S3. Sau đó, người dùng cuối sẽ truy cập trang của bạn bằng URL trang web công khai do Amazon S3 cung cấp. Bạn không cần chạy bất kỳ máy chủ web nào hoặc sử dụng các dịch vụ khác để trang của bạn có thể khả dụng.

Để đạt được mục đích của mô-đun này, bạn sẽ sử dụng URL điểm cuối trang web Amazon S3 mà chúng tôi cung cấp. URL có dạng

http://{your-bucket-name}.s3-website.{region}.amazonaws.com

. Đối với hầu hết các ứng dụng thực, bạn sẽ muốn sử dụng miền tùy chỉnh để lưu trữ trang của mình. Nếu bạn muốn sử dụng miền của riêng mình, hãy làm theo hướng dẫn để thiết lập trang web tĩnh bằng miền tùy chỉnh trong tài liệu Amazon S3.

Thời gian hoàn thành mô-đun: 30 phút

Các dịch vụ đã sử dụng: Amazon S3

Mẫu CloudFormation: Nếu bạn đã quen sử dụng Amazon S3 hoặc chỉ muốn chuyển sang làm việc ngay với Lambda và API Gateway, bạn có thể khởi chạy một trong các mẫu AWS CloudFormation này trong Khu vực bạn chọn để tự động dựng các tài nguyên cần thiết.

Khu vực Mẫu CloudFormation
Miền Đông Hoa Kỳ (Bắc Virginia) Khởi chạy ngăn xếp >
Miền Đông Hoa Kỳ (Ohio) Khởi chạy ngăn xếp >
Miền Tây Hoa Kỳ (Oregon) Khởi chạy ngăn xếp >
Châu Âu (Frankfurt) Khởi chạy ngăn xếp >
Châu Âu (Ireland) Khởi chạy ngăn xếp >
Châu Âu (London) Khởi chạy ngăn xếp >
Châu Á Thái Bình Dương (Tokyo) Khởi chạy ngăn xếp >
Châu Á Thái Bình Dương (Seoul) Khởi chạy ngăn xếp >
Châu Á Thái Bình Dương (Sydney) Khởi chạy ngăn xếp >
Châu Á Thái Bình Dương (Mumbai) Khởi chạy ngăn xếp >

Hướng dẫn khởi chạy CloudFormation

  1. Nhấp vào liên kết Khởi chạy ngăn xếp bên trên để chọn khu vực mong muốn.

  2. Nhấp vào Tiếp theo trên trang Lựa chọn mẫu.

  3. Cung cấp một tên duy nhất chung cho Tên vùng lưu trữ trang web, chẳng hạn như


    wildrydes-tencuaban

    và nhấp vào Tiếp theo.

  4. Trên trang Tùy chọn, giữ nguyên mọi tùy chọn mặc định và nhấp vào Tiếp theo.

  5. Trên trang Xem lại, đánh dấu chọn hộp để xác nhận CloudFormation sẽ tạo các tài nguyên IAM và nhấp vào Tạo.

    Mẫu này sử dụng tài nguyên tùy chỉnh để sao chép tài sản trang web tĩnh từ vùng lưu trữ S3 trung tâm vào vùng lưu trữ chuyên dụng của bạn. Để tài nguyên tùy chỉnh ghi vào vùng lưu trữ mới trong tài khoản của bạn, tài nguyên này phải tạo vai trò IAM mà nó có thể đảm nhận với những quyền đó.

  6. Đợi ngăn xếp


    wildrydes-webapp-1

    đạt trạng thái

    CREATE_COMPLETE

    .

  7. Sau khi lựa chọn ngăn xếp


    wildrydes-webapp-1

    , nhấp vào tab Đầu ra, rồi nhấp vào liên kết URL trang web.

  8. Xác minh trang chủ Wild Rydes tải đúng cách và chuyển sang mô-đun tiếp theo: Quản lý người dùng.

Hãy làm theo hướng dẫn từng bước sau đây để lưu trữ trang web tĩnh. Nhấp vào số của từng bước để mở rộng phần.

Deploy Static Website to AWS S3 with HTTPS using CloudFront
Deploy Static Website to AWS S3 with HTTPS using CloudFront

Tham khảo source code để tạo một website đơn giản

Nguồn của source code mình lấy từ https://codepen.io/ashleynolan/pen/WbxNap

Ngoài tính năng để tạo một website đơn giản, chúng ta còn có thể sử dụng Amazon S3 làm nơi lưu trữ các dữ liệu được đồng bộ tự động từ các máy chủ Windows Server. Để tìm hiểu thêm về tính năng này tại bài viết: Thiết lập định kỳ sao lưu file từ thư mục Windows lên Amazon S3 | VTI CLOUD

Making your content publicly accessible

For your visitors to access content at the Amazon S3 website endpoint, the Amazon S3 objects must have the appropriate permissions. Amazon S3 enforces a security-by- default policy. New objects in a new bucket are private by default. For example, an Access Denied error appears when trying to view a newly uploaded file using your web browser. To fix this, configure the content as publicly accessible. It’s possible to set object-level permissions for every individual object, but that quickly becomes tedious.

Instead, define an Amazon S3 bucket-wide policy.

The following sample Amazon S3 bucket policy enables everyone to view all objects in a bucket:


{ Version":"2012-10-17", Statement":[{ Sid":"PublicReadGetObject", Effect":"Allow", "Principal": "*", "Action":["s3:GetObject"], "Resource":["arn:aws:s3:::S3_BUCKET_NAME_GOES_HERE/*"] } ] }

This policy defines who can view the contents of your S3 bucket. Refer to the Securing administration access to your website resources section of this document for the AWS Identity and Access Management (IAM) policies to manage permissions for your team members.

Together, S3 bucket policies and IAM policies give you fine-grained control over who can manage and view your website.

Inside World’s Biggest Data Center
Inside World’s Biggest Data Center

Step 5: Configure an index document

When you enable static website hosting for your bucket, you enter the name of the index document (for example,

index.html

). After you enable static website hosting for the bucket, you upload an HTML file with this index document name to your bucket.

To configure the index document
  1. Create an


    index.html

    file.

    If you don’t have an


    index.html

    file, you can use the following HTML to create one:

    <br /> My Website Home Page<br />

    Welcome to my website

    Now hosted on Amazon S3!



  2. Save the index file locally.

    The index document file name must exactly match the index document name that you enter in the Static website hosting dialog box. The index document name is case sensitive. For example, if you enter


    index.html

    for the Index document name in the Static website hosting dialog box, your index document file name must also be

    index.html

    and not

    Index.html

    .

  3. Sign in to the AWS Management Console and open the Amazon S3 console at https://console.aws.amazon.com/s3/

  4. In the Buckets list, choose the name of the bucket that you want to use to host a static website.

  5. Enable static website hosting for your bucket, and enter the exact name of your index document (for example,


    index.html

    ). For more information, see Enabling website hosting.

    After enabling static website hosting, proceed to step 6.

  6. To upload the index document to your bucket, do one of the following:

    • Drag and drop the index file into the console bucket listing.

    • Choose Upload, and follow the prompts to choose and upload the index file.

    For step-by-step instructions, see Uploading objects.

  7. (Optional) Upload other website content to your bucket.

Step 4: Add a bucket policy that makes your bucket content publicly available

After you edit S3 Block Public Access settings, you can add a bucket policy to grant public read access to your bucket. When you grant public read access, anyone on the internet can access your bucket.

Important

The following policy is an example only and allows full access to the contents of your bucket. Before you proceed with this step, review How can I secure the files in my Amazon S3 bucket?

  1. Under Buckets, choose the name of your bucket.

  2. Choose Permissions.

  3. Under Bucket Policy, choose Edit.

  4. To grant public read access for your website, copy the following bucket policy, and paste it in the Bucket policy editor.


    { "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::


    Bucket-Name

    /*” ] } ] }

  5. Update the


    Resource

    to your bucket name.

    In the preceding example bucket policy,


    Bucket-Name

    is a placeholder for the bucket name. To use this bucket policy with your own bucket, you must update this name to match your bucket name.

  6. Choose Save changes.

    A message appears indicating that the bucket policy has been successfully added.

    If you see an error that says


    Policy has invalid resource

    , confirm that the bucket name in the bucket policy matches your bucket name. For information about adding a bucket policy, see How do I add an S3 bucket policy?

    If you get an error message and cannot save the bucket policy, check your account and bucket Block Public Access settings to confirm that you allow public access to the bucket.

Over 200,000 Servers in One Place! Visiting Hetzner in Falkenstein (Germany)
Over 200,000 Servers in One Place! Visiting Hetzner in Falkenstein (Germany)

Hosting a static website using Amazon S3

You can use Amazon S3 to host a static website. On a static website, individual webpages include static content. They might also contain client-side scripts.

By contrast, a dynamic website relies on server-side processing,
including server-side scripts, such as PHP, JSP, or ASP.NET. Amazon S3 does not support
server-side scripting, but AWS has other resources for hosting dynamic websites. To learn
more about website hosting on AWS, see Web
Hosting

Note

You can use the AWS Amplify Console to host a single-page web app. The AWS Amplify Console supports single-page apps built with single-page app frameworks (for example, React JS, Vue JS, Angular JS, and Nuxt) and static site generators (for example, Gatsby JS, React-static, Jekyll, and Hugo). For more information, see Getting Started in the AWS Amplify Console User Guide.

Amazon S3 website endpoints do not support HTTPS. If you want to use HTTPS, you can use
Amazon CloudFront to serve a static website hosted on Amazon S3. For more information, see How do I use CloudFront
to serve HTTPS requests for my Amazon S3 bucket?

For more information about hosting a static website on Amazon S3, including instructions and step-by-step walkthroughs, see the following topics.

Tutorial: Configuring a static website on Amazon S3

Important

Amazon S3 now applies server-side encryption with Amazon S3 managed keys (SSE-S3) as the base level of encryption for every bucket in Amazon S3. Starting January 5, 2023, all new object uploads to Amazon S3 are automatically encrypted at no additional cost and with no impact on performance. The automatic encryption status for S3 bucket default encryption configuration and for new object uploads is available in AWS CloudTrail logs, S3 Inventory, S3 Storage Lens, the Amazon S3 console, and as an additional Amazon S3 API response header in the AWS Command Line Interface and AWS SDKs. For more information, see Default encryption FAQ.

You can configure an Amazon S3 bucket to function like a website. This example walks you through the steps of hosting a website on Amazon S3.

Important

The following tutorial requires disabling Block Public Access. We recommend keeping Block Public Access enabled. If you want to keep all four Block Public Access settings enabled and host a static website, you can use Amazon CloudFront origin access control (OAC). Amazon CloudFront provides the capabilities required to set up a secure static website. Amazon S3 static websites support only HTTP endpoints. Amazon CloudFront uses the durable storage of Amazon S3 while providing additional security headers, such as HTTPS. HTTPS adds security by encrypting a normal HTTP request and protecting against common cyberattacks. For more information, see Getting started with a secure static website in the Amazon CloudFront Developer Guide.

Topics

Step 1: Create a bucket

The following instructions provide an overview of how to create your buckets for website hosting. For detailed, step-by-step instructions on creating a bucket, see Creating a bucket.

To create a bucket
  1. Sign in to the AWS Management Console and open the Amazon S3 console at https://console.aws.amazon.com/s3/

  2. Choose Create bucket.

  3. Enter the Bucket name (for example,


    example.com

    ).

  4. Choose the Region where you want to create the bucket.

    Choose a Region that is geographically close to you to minimize latency and costs, or to address regulatory requirements. The Region that you choose determines your Amazon S3 website endpoint. For more information, see Website endpoints.

  5. To accept the default settings and create the bucket, choose Create.

Spring Boot, React.js & AWS S3 Full Stack Development
Spring Boot, React.js & AWS S3 Full Stack Development

Keywords searched by users: amazon s3 web server

Module 1 - Static Website Hosting On Amazon S3
Module 1 – Static Website Hosting On Amazon S3
Building A Static Website On Amazon S3 With Microservices - Dzone
Building A Static Website On Amazon S3 With Microservices – Dzone
Building A Web Server In Aws Ec2 Instance By Integrating With Aws S3
Building A Web Server In Aws Ec2 Instance By Integrating With Aws S3
Deploy Static Website On S3 Bucket And Configure Cloudfront Distribution -  Dev Community
Deploy Static Website On S3 Bucket And Configure Cloudfront Distribution – Dev Community
Static Website Hosting On Amazon S3 (With Cloudfront) Without Enabling  Public Access. - Youtube
Static Website Hosting On Amazon S3 (With Cloudfront) Without Enabling Public Access. – Youtube
Hosting WordPress Using Amazon S3 - Youtube
Hosting WordPress Using Amazon S3 – Youtube

See more here: kientrucannam.vn

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *