跳至內容

如何使用 Amazon S3 靜態網站託管來處理重新導向請求?

1 分的閱讀內容
0

我想使用 Amazon Simple Storage Service (Amazon S3) 來託管靜態網站並設定網站重新導向。

解決方法

首先,為 Amazon S3 儲存貯體啟用靜態網站託管。然後,設定重新導向規則到另一個儲存貯體或網域

**注意:**對於企業部署,最佳做法是使用 AWS Amplify 託管從 Amazon S3 儲存貯體部署靜態網站。將 S3 應用程式部署到 AAWS Amplify 託管可能會產生額外費用。如需詳細資訊,請參閱 AWS Amplify 定價

在 S3 儲存貯體端點上設定靜態網站託管

請完成下列步驟:

  1. 開啟 Amazon S3 console (Amazon S3 主控台)。
  2. 在導覽窗格中,選擇 Buckets (儲存貯體)。
  3. 選取要用於靜態網站託管的 S3 儲存貯體。
  4. 選擇 Properties (屬性) 索引標籤。
  5. Static website hosting (靜態網站託管) 中,選擇 Edit (編輯),然後選擇 Enable (啟用)。
  6. Hosting type (託管類型) 中,選擇 Host a static website (託管靜態網站)。
  7. Index document (索引文件) 中,輸入網站的首頁或預設頁面,例如 index.html
    注意:索引名稱不要以結尾斜線「/」開頭。例如,請勿使用:/index.html。而是使用全部小寫的 index.html。如需詳細資訊,請參閱為什麼我在使用 Amazon S3 靜態網站重新導向功能時,網址會新增結尾斜線?
  8. 選擇 Save changes (儲存變更)。
  9. 測試您的網站端點

注意:如果您收到拒絕存取錯誤訊息,請參閱為什麼當我使用 Amazon S3 靜態網站託管端點時會出現「拒絕存取」錯誤?

(選用) 設定靜態網站的權限

若要授與靜態網站的公開讀取存取權,您可以開啟 S3 封鎖公開存取。如果您的儲存貯體包含不屬於您的物件,那麼您可能還需要新增授與讀取存取權的存取控制清單 (ACL)。如果您不想開啟 S3 封鎖公開存取,請建立 Amazon CloudFront 發行版來為靜態網站提供服務。

如需詳細資訊,請參閱設定網站存取的權限

**注意:**S3 封鎖公開存取功能預設為關閉。最佳做法是讓 S3 封鎖公開存取保持關閉。

設定靜態網站的重新導向規則

請完成下列步驟:

  1. 選擇 S3 儲存貯體的 Properties (屬性) 索引標籤。
  2. Redirection rules (重新導向規則) 下,輸入下列 JSON 規則:
    [
        {
            "Condition": {
                "KeyPrefixEquals": "images/"
            },
            "Redirect": {
                "ReplaceKeyWith": "folderdeleted.html"
            }
        }
    ]
    上述的 JSON 規則範例會將具有 images/ 索引鍵首碼之物件的請求重新導向到 folderdeleted.html
  3. 選擇 Save changes (儲存變更)。
    **注意:**若要在 Amazon S3 主控台上建立重新導向規則,您必須使用 JSON。如需更多重新導向規則的範例,請參閱重新導向規則範例

您也可以使用 Amazon Route 53 將網域流量路由到 S3 儲存貯體

相關資訊

為什麼我在 Amazon S3 上託管並透過 CloudFront 提供服務的靜態網站會無法使用?

為什麼即使我限制了只有特定 Amazon VPC 才可存取,仍然可以從公有 IP 位址存取 Amazon S3 上的靜態網站?

AWS 官方已更新 1 年前