我正在使用 Amazon Simple Storage Service (Amazon S3) 儲存貯體來託管靜態網站。我向儲存貯體傳送請求時,會看到 XML 物件清單,而不是我為網站設定的索引頁面。
簡短描述
Amazon S3 儲存貯體同時具有網站端點和 REST API 端點。網站端點使用以下格式:
bucket-name.s3-website-us-west-2.amazonaws.com
REST API 端點使用以下格式:
bucket-name.s3-us-west-2.amazonaws.com
如果將 GET 請求傳送到儲存貯體,則必須將請求傳送到網站端點,以便 Amazon S3 傳回索引頁面 (在 Amazon S3 主控台中稱為「索引文件」)。如果將 GET 請求傳送到 REST API 端點,Amazon S3 會傳回儲存貯體中的物件清單。
如果將 Amazon CloudFront 分佈與 Amazon S3 來源搭配使用,還必須將索引頁面設定為預設根物件,以確保 Amazon S3 傳回索引頁面。
**重要:**端點會因 AWS 區域而異。如需依區域顯示網站端點,請參閱 Amazon S3 網站端點。如需依區域顯示 REST API 端點,請參閱 Amazon S3 端點。
解決方法
請遵循以下步驟找出您儲存貯體的網站端點:
- 開啟 Amazon S3 主控台。
- 從儲存貯體清單中,選擇您用來託管靜態網站的儲存貯體。
- 選擇屬性視圖,然後選擇靜態網站託管。
網站端點是列為端點的值。
如果您使用 CloudFront 分佈搭配 Amazon S3 來源,請按照下列步驟操作,將您的分佈預設根物件設定為索引頁面:
- 開啟 CloudFront 主控台。
- 從分佈清單中選擇與 S3 儲存貯體關聯的分佈。
- 從**「一般」視圖中,選擇編輯**。
- 為預設根物件輸入索引頁面的物件名稱 (例如 "index.html")。
- 選擇是,編輯。
相關資訊
網站端點與 REST API 端點之間的主要差異