

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# HTTP 400 狀態碼 (錯誤的請求)
<a name="http-400-bad-request"></a>

當用戶端在請求中傳送一些無效資料時，CloudFront 會傳回 400 錯誤的請求，例如承載或參數中的遺失或不正確的內容。這也可以代表一般用戶端錯誤。

## Amazon S3 原始伺服器傳回 400 錯誤
<a name="s3-origin-400-error"></a>

如果您使用 Amazon S3 原始伺服器搭配 CloudFront 分佈，分佈可能會傳送錯誤回應，其中包含 HTTP 狀態碼 400 錯誤的請求，以及類似下列的訊息：

*授權標頭格式錯誤；區域 '*<AWS Region>*' 錯誤；預期 '*<AWS Region>*'*

例如：

*授權標頭格式不正確；區域 'us-east-1' 是錯誤的；應該是 'us-west-2'*

在下列情況下可能會發生這個問題：

1. 您的 CloudFront 分佈的來源是 Amazon S3 儲存貯體。

1. 您已將 S3 儲存貯體從一個 AWS 區域移至另一個區域。也就是說，您刪除了 S3 儲存貯體，稍後您建立了一個具有相同儲存貯體名稱的新儲存貯體，但位於與原始 S3 儲存貯體所在位置不同的 AWS 區域中。

若要修正此錯誤，請更新您的 CloudFront 分佈，以便在儲存貯體的目前 AWS 區域中尋找 S3 儲存貯體。

**更新您的 CloudFront 分佈**

1. 登入 AWS 管理主控台 ，並在 開啟 CloudFront 主控台[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)。

1. 選擇產生此錯誤的分佈。

1. 選擇 **Origins and Origin Groups (原始伺服器和原始伺服器群組)**。

1. 尋找您所移動 S3 儲存貯體的原始來源。選取此原始來源旁邊的核取方塊，然後選擇 **Edit (編輯)**。

1. 請選擇 **Yes, Edit (是，編輯)**。在選擇 **Yes, Edit (是、編輯)** 之前，不需要變更任何設定。

當您完成這些步驟時，CloudFront 會重新部署您的分佈。在部署分佈時，您會在**上次修改**的資料欄下看到**部署中**狀態。部署完成過一段時間後，您應該不會再收到 `AuthorizationHeaderMalformed` 錯誤回應。

## Application Load Balancer 原始伺服器傳回 400 錯誤
<a name="alb-origin-400-error"></a>

如果您使用 Application Load Balancer 原始伺服器搭配 CloudFront 分佈，400 錯誤的可能原因包括下列項目：
+ 用戶端傳送不符合 HTTP 規格的格式錯誤請求。
+ 請求標頭超過每個請求行 16 KB、每個單一標頭 16 KB，或整個請求標頭 64 KB 的限制。
+ 用戶端在傳送完整請求內文之前關閉了連線。