我的 Amazon CloudFront 發佈項目在檢視者請求檔案或物件時,傳回了「HTTP 404 (Not Found)」錯誤。
解決方法
請依照下列疑難排解步驟來解決 CloudFront 發佈項目組態出現的 HTTP 404 status code (Not Found) 錯誤訊息。
NoSuchBucket 錯誤訊息
如果 Amazon Simple Storage Service (Amazon S3) 的儲存貯體不存在,您可能會收到包含錯誤訊息 NoSuchBucket 的「HTTP 404 (Not Found)」錯誤。例如,您使用 Amazon S3 儲存貯體作為來源,但該儲存貯體的政策不存在或無效。
如果您將 CloudFront 設定為將主機標頭轉發到來源,也可能收到此錯誤代碼。如果 AllViewer 受管政策或自訂政策包含主機標頭,則會收到此錯誤代碼。若要解決此錯誤,請從政策中移除主機標頭,或使用 CachingOptimized 政策。
Amazon S3 來源的 HTTP 404 錯誤
如果您將 Amazon S3 儲存貯體作為 CloudFront 發佈項目的來源,可能會收到 HTTP 404 錯誤。若要解決此錯誤,請檢查來源設定。確認 S3 儲存貯體的來源網域名稱與來源路徑網址正確。
如需更多資訊,請參閱來源路徑。
自訂來源的 HTTP 404 錯誤
如果您的 CloudFront 發佈項目組態設定了自訂來源,那麼您可能會收到 HTTP 404 錯誤。若要解決此錯誤,請確保您的 Web 伺服器設定正確。驗證請求的檔案存在於來源中,且請求網址的路徑與來源中的檔案路徑相符。
如果您的自訂來源使用 Amazon Elastic Compute Cloud (Amazon EC2),請檢查原始伺服器的組態設定。確認您為原始伺服器的網域名稱指定了負載平衡器的網址。
自訂錯誤頁面的 HTTP 404 錯誤
如果您的 CloudFront 發佈項目設定了針對 HTTP 狀態碼的自訂錯誤頁面,那就有可能出現 HTTP 404 錯誤。檢查您的發佈項目是否設定了自訂錯誤回應。
如果您發佈項目使用的自訂錯誤頁面不慎遭到刪除,系統將對該已刪除的自訂錯誤頁面傳回 HTTP 404 錯誤。
如需更多資訊,請參閱在設定自訂錯誤頁面時 CloudFront 如何處理錯誤。