Chuyển hướng trong S3 Website với x-amz-website-redirect-location
x-amz-website-redirect-location là một thuộc tính siêu dữ liệu (metadata) của một đối tượng trong S3 Bucket. Nó cho phép bạn chuyển hướng yêu cầu của người dùng từ đối tượng này tới một đối tượng khác hoặc một URL khác.
Chú ý: x-amz-website-redirect-location chỉ hoạt động với S3 Static Website hoặc CloudFront kết nối vào một S3 Bucket thông qua S3 Website Endpoint.
1. Chuyển hướng với x-amz-website-redirect-location
Giả sử rằng website của bạn có một URL đã lỗi thời:
- http://your-domain.com/old-folder/java-basic-tutorial.html
Nếu người dùng truy cập vào URL đã lỗi thời trên, yêu cầu của người dùng sẽ được chuyển hướng tới URL mới.
- http://your-domain.com/new-folder/java/java-basic.html
Để làm điều đó, trên S3 Bucket Console bạn cần thay đổi thông tin siêu dữ liệu (metadata) của đối tượng cũ.
- [Selected Object] > Object actions > Edit metadata
Nhấn nút "Add metadata":
Type | System defined |
Key | x-amz-website-redirect-location |
Value | /new-folder/java/java-basic.html |
Để test sự hoạt động của x-amz-website-redirect-location bạn cần truy cập thông qua một "S3 Website Endpoint Object URL":
- http://{bucket-name}.s3-website.{region-id}.amazonaws.com/old-folder/java-basic-tutorial.html
- http://your-custom-domain.com/old-folder/java-basic-tutorial.html
Chú ý: Đối tượng được thiết lập siêu dữ liệu "x-amz-website-redirect-location" là một đối tượng đặc biệt, nó có thể không phải là một file vật lý. Để tạo ra các đối tượng này bạn nên sử dụng các ứng dụng khách S3 hoặc API thay vì tạo và thiết lập chúng một cách thủ công như trên.
2. URL rút gọn
Có lẽ bạn không xa lạ với "bit.ly", một website cho phép bạn rút gọn một URL bất kỳ để tạo ra một URL khác ngắn gọn hơn. Và bạn có thể chia sẻ URL ngắn gọn này, người nhận khi truy cập vào URL ngắn gọn họ sẽ được chuyển hướng tới URL ban đầu.
Sử dụng "x-amz-website-redirect-location" bạn có thể tạo ra một dịch vụ giống như "bit.ly".
- http://your-domain.com/short-path --> http://other-domain.com/very/long/path?long-query-string
Thiết lập siêu dữ liệu (metadata):
Type | System defined |
Key | x-amz-website-redirect-location |
Value | http://other-domain.com/very/long/path?long-query-string |
Cuối cùng, đây là một URL ngắn gọn của tôi, có một món hời cho bạn, nếu tò mò bạn có thể nhấn vào xem nó là cái gì.
Các hướng dẫn Amazon Web Services
- Giới thiệu về Amazon Web Services (AWS)
- Giới thiệu về Amazon S3
- Giới thiệu về Amazon Cloudfront và kiến trúc của nó
- Làm sao để giảm chi phí Amazon Cloudfront?
- Vô hiệu hoá bộ nhớ đệm CloudFront
- Giới thiệu về DigitalOcean Spaces
- Hướng dẫn tạo DigitalOcean Spaces Bucket
- Giới thiệu về Amazon ACM
- Java Awssdk S3 Tải tệp lên S3 Bucket với S3Client
- Tạo AWS accessKeyId/secretAccessKey
- Java Awssdk S3 Liệt kê các đối tượng trong S3 Bucket
- Lưu trữ (host) một Website tĩnh trên Amazon S3
- Vô hiệu hoá bộ nhớ đệm của CloudFront với Java
- Tạo DigitalOcean Spaces Access Key
- Java Awssdk Các Credentials Provider thông dụng
- Java Awssdk Tạo và sử dụng ProfileCredentialsProvider
- Java Awssdk Tạo và sử dụng EnvironmentVariableCredentialsProvider
- Java Awssdk Tạo và sử dụng SystemPropertyCredentialsProvider
- Java Awssdk S3 Tải object lên với S3TransferManager
- Java Awssdk S3 Tải object xuống với S3TransferManager
- Java thao tác với DigitalOcean Spaces sử dụng S3TransferManager
- Java tạo, liệt kê và xoá S3 Bucket
- Aws Console Tạo tài khoản người dùng IAM
- Tạo một vùng chứa Amazon S3 (S3 Bucket)
- Các quy tắc chuyển hướng cho S3 Static Website
- Cấu hình tên miền tuỳ chỉnh cho website tĩnh Amazon S3
- Tạo bản phân phối CloudFront cho S3 Bucket
- Cấu hình các trang phản hồi lỗi cho CloudFront
- Tạo các chính sách S3 Bucket
- Công cụ tạo các chính sách cho AWS - policygen
- So sánh Amazon S3 Rest API Endpoint và S3 Web Endpoint
- Chuyển hướng trong S3 Website với x-amz-website-redirect-location
- Di chuyển (migrate) dịch vụ DNS tới Amazon Route 53
- Chuyển (transfer) đăng ký tên miền tới Amazon Route 53
- Yêu cầu chứng chỉ SSL từ Amazon ACM
Show More