

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

# HTTP 403 狀態碼 (許可遭拒)
<a name="http-403-permission-denied"></a>

HTTP 403 錯誤表示用戶端未獲授權存取請求的資源。用戶端了解請求，但無法授權檢視器存取。以下是 CloudFront 傳回此狀態碼時的常見原因：

**Topics**
+ [替代 CNAME 設定不正確](#alternate-cname-incorrectly-configured)
+ [AWS WAF 在 CloudFront 分佈或原始伺服器設定](#aws-waf-configured-on-distribution-origin)
+ [自訂原始伺服器傳回 403 錯誤](#custom-origin-returning-403)
+ [Amazon S3 原始伺服器傳回 403 錯誤](#s3-origin-403-error)
+ [地理限制傳回 403 錯誤](#geolocation-403)
+ [已簽署 URL 或已簽署 Cookie 組態傳回 403 錯誤](#signed-URLs-cookies-403)
+ [堆疊分佈導致 403 錯誤](#stacked-distributions-403)

## 替代 CNAME 設定不正確
<a name="alternate-cname-incorrectly-configured"></a>

確認您已為分佈指定正確的 CNAME。若要使用替代 CNAME 而非預設 CloudFront URL：

1. 在 DNS 中建立 CNAME 記錄，將 CNAME 指向 CloudFront 分佈 URL。

1. 在 CloudFront 分佈組態中新增 CNAME。

如果您建立 DNS 記錄，但未在 CloudFront 分佈組態中新增 CNAME，則請求會傳回 403 錯誤。如需設定自訂 CNAME 的詳細資訊，請參閱 [透過新增備用網域名稱 (CNAME) 使用自訂 URL](CNAMEs.md)。

## AWS WAF 在 CloudFront 分佈或原始伺服器設定
<a name="aws-waf-configured-on-distribution-origin"></a>

當 AWS WAF 位於用戶端和 CloudFront 之間時，CloudFront 無法區分原始伺服器傳回的 403 錯誤碼和封鎖請求 AWS WAF 時傳回的 403 錯誤碼。

若要尋找 403 狀態碼的來源，請檢查您的 AWS WAF Web 存取控制清單 (ACL) 規則是否有封鎖的請求。如需詳細資訊，請參閱下列主題：
+ [AWS WAF Web 存取控制清單 (Web ACLs)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html)
+ [測試和調整您的 AWS WAF 防護](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-testing.html)

## 自訂原始伺服器傳回 403 錯誤
<a name="custom-origin-returning-403"></a>

如果您使用的是自訂原始伺服器，且原始伺服器具有自訂防火牆組態，則可能會看到 403 錯誤。若要進行疑難排解，請直接向原始伺服器提出請求。如果您可以在沒有 CloudFront 的情況下複寫錯誤，則原始伺服器會導致 403 錯誤。

如果自訂原始伺服器造成錯誤，請檢查原始伺服器日誌以識別可能導致錯誤的因素。如需詳細資訊，請參閱下列疑難排解主題：
+ [如何對 API Gateway 的 HTTP 403 錯誤進行疑難排解？](https://aws.amazon.com/premiumsupport/knowledge-center/api-gateway-troubleshoot-403-forbidden/ )
+ [如何對 Application Load Balancer 的 HTTP 403 禁止錯誤進行疑難排解？](https://repost.aws/knowledge-center/alb-http-403-error)

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

您可能會收到 403 錯誤，原因如下：
+ CloudFront 無法存取 Amazon S3 儲存貯體。如果您的分佈未啟用原始存取身分 (OAI) 或原始存取控制 (OAC)，且儲存貯體為私有，則可能會發生這種情況。
+ 請求 URL 中指定的路徑不正確。
+ 請求的物件不存在。
+ 主機標頭已使用 REST API 端點轉送。如需詳細資訊，請參閱《*Amazon Simple Storage Service 使用者指南*》中的 [HTTP 託管標頭儲存貯體規格](https://docs.aws.amazon.com/AmazonS3/latest/userguide/VirtualHosting.html#VirtualHostingSpecifyBucket)。
+ 您設定了自訂錯誤頁面。如需詳細資訊，請參閱[當您已設定自訂錯誤頁面時，CloudFront 如何處理錯誤](HTTPStatusCodes.md#HTTPStatusCodes-custom-error-pages)。

## 地理限制傳回 403 錯誤
<a name="geolocation-403"></a>

如果您啟用了地理限制功能 (有時也稱為地理封鎖) 來防止特定地理位置的使用者存取您透過 CloudFront 分佈所分佈的內容，封鎖使用者時會收到 403 錯誤。

如需詳細資訊，請參閱[限制您內容的地理分佈](georestrictions.md)。

## 已簽署 URL 或已簽署 Cookie 組態傳回 403 錯誤
<a name="signed-URLs-cookies-403"></a>

如果您為分佈的行為組態啟用**限制檢視器存取**，則不使用已簽署 Cookie 或已簽署 URL 的請求會導致 403 錯誤。如需詳細資訊，請參閱下列主題：
+ [使用已簽署 URL 和已簽署 Cookie 提供私有內容](PrivateContent.md)
+ [如何對與 CloudFront 中已簽署 URL 或已簽署 Cookie 相關的問題進行疑難排解？](https://aws.amazon.com/premiumsupport/knowledge-center/cloudfront-troubleshoot-signed-url-cookies/)

## 堆疊分佈導致 403 錯誤
<a name="stacked-distributions-403"></a>

如果您在對原始端點的請求鏈中有兩個以上的分佈，CloudFront 會傳回 403 錯誤。我們不建議將一個分佈放在另一個分佈前面。