一般問題

問:什麼是 Amazon CloudFront?

Amazon CloudFront 是一種 Web 服務,為企業和 Web 應用程式開發人員提供一種簡單又經濟實惠的方式,以低延遲和高資料傳送速率分發內容。如同其他 AWS 服務,Amazon CloudFront 是一種按用量付費的自助服務,無須長期承諾或最低費用。使用 CloudFront,會透過一個全球節點網路將您的檔案交付給最終使用者。

問:Amazon CloudFront 可以發揮的功能為何?

Amazon CloudFront 提供簡易 API,以便您:

  • 使用遍布全球的節點網路處理請求,以低延遲和高資料傳輸速率分發內容。
  • 無須協調合約和最低承諾,即可開始使用。

問:如何開始使用 Amazon CloudFront?

在 Amazon CloudFront 詳細資訊頁面上,按一下「建立免費帳戶」按鈕。如果您選擇使用其他 AWS 服務做為透過 Amazon CloudFront 傳輸之檔案的原始伺服器,則在建立 CloudFront 分發之前,您必須註冊該服務。

問:如何使用 Amazon CloudFront?

要使用 Amazon CloudFront,您必須執行以下操作:

  • 對於靜態檔案,請將最終版本的檔案存放在一或多個原始伺服器上。這些伺服器可以是 Amazon S3 儲存貯體。對於動態產生的個人化或自訂內容,您可以使用 Amazon EC2 或其他任何 Web 伺服器作為原始伺服器。這些原始伺服器會存放或產生您要透過 Amazon CloudFront 分發的內容。
  • 透過簡單的 API 呼叫在 Amazon CloudFront 上註冊您的原始伺服器。此呼叫將傳回一個 CloudFront.net 網域名稱,您可以使用該網域名稱,透過 Amazon CloudFront 服務從原始伺服器分配內容。例如,您可以註冊 Amazon S3 儲存貯體 “bucketname.s3.amazonaws.com” 作為所有靜態內容的原始伺服器,以及註冊一個 Amazon EC2 執行個體 “dynamic.myoriginserver.com” 作為所有動態內容的原始伺服器。然後,您可以使用 API 或 AWS 管理主控台來建立 Amazon CloudFront 分發,它可能傳回 “abc123.cloudfront.net” 作為分發網域名稱。
  • 在 Web 應用程式、媒體播放器或網站中包含 cloudfront.net 網域名稱或您建立的 CNAME 別名。使用 cloudfront.net 網域名稱 (或您設定的 CNAME) 發出的每個請求都會路由到最適合以最高效能交付內容的節點。該節點將嘗試使用檔案的本機副本處理請求。如果沒有本機副本,Amazon CloudFront 會從原始伺服器取得副本。此副本將可在該節點提供給之後的請求使用。

問:Amazon CloudFront 如何提供更優異的效能?

Amazon CloudFront 運用了全球節點網路以及可快取靠近檢視者之內容副本的區域節點快取。Amazon CloudFront 可確保會由距離最近的節點來處理最終使用者請求。因此,檢視者請求只需傳送很短的距離,這樣就能為檢視者提升效能。對於不是在節點和區域節點快取所快取的檔案,Amazon CloudFront 將與您的原始伺服器保持持續連接,以便儘快從原始伺服器擷取這些檔案。最後,Amazon CloudFront 使用其他優化措施 (例如更廣的 TCP 初始擁塞視窗),在將您的內容交付至檢視者時提供更高的效能。

問:透過網際網路分發內容時,Amazon CloudFront 如何為我降低成本?

就像其他 AWS 服務一樣,Amazon CloudFront 沒有最低承諾費用,您只需按用量付費。與自我託管相比,Amazon CloudFront 無須在網際網路的多個網站中操作昂貴且複雜的快取伺服器網路,也無須佈建過多的容量以應付可能的流量峰值。Amazon CloudFront 也會使用一些技術,例如將節點中多位檢視者同時對同一檔案發出的請求,壓縮為單一請求,再傳送至原始伺服器。這可減少原始伺服器的工作負載、降低擴展原始基礎設施規模的需求,進而節省更多成本。

此外,如果您使用的是 AWS 原始伺服器 (如 Amazon S3、Amazon EC2 等),從 2014 年 12 月 1 日開始,我們不再收取傳出到 Amazon CloudFront 的 AWS 資料費用。這適用於從所有 AWS 區域到所有全球 CloudFront 節點的資料傳輸。

問:Amazon CloudFront 如何加快整個網站的速度?

Amazon CloudFront 使用您為檔案設定的標準快取控制標頭來識別靜態內容和動態內容。使用單一 Amazon CloudFront 分發交付您的所有內容,這有助於確保對整個網站或 Web 應用程式運用效能優化。使用 AWS 原始伺服器時,由於 AWS 可追蹤和調整原始路由、監控系統運作狀態,並在有問題發生時快速回應,加上 Amazon CloudFront 與其他 AWS 服務的整合,您的效能、可靠性和使用負擔將有所改善,所以您能從中獲益。您還可以享受在單一網站上對不同的內容類型使用不同原始伺服器 – 例如靜態物件使用 Amazon S3、動態內容使用 Amazon EC2、第三方內容則使用自訂原始伺服器 – 按使用量付費。

問:Amazon CloudFront 與 Amazon S3 有何不同?

Amazon CloudFront 是分發經常存取的靜態內容的理想之選,可從節點交付中受益 – 例如常用的網站影像、影片、媒體檔案或軟體下載。

問:Amazon CloudFront 與傳統內容交付解決方案有何不同?

Amazon CloudFront 讓您能夠快速獲得高效能內容交付的優勢,且無須協調合約,也無須支付昂貴的費用。Amazon CloudFront 讓所有開發人員能夠在自助服務模式下享受僅按實際用量付費的低廉定價。開發人員還能從與其他 Amazon Web Services 的緊密整合中受益。該解決方案能夠作為原始伺服器簡單地與 Amazon S3、Amazon EC2 和 Elastic Load Balancing 配合使用,為開發人員提供耐久儲存與高效能交付的結合。Amazon CloudFront 還與 Amazon Route 53 和 AWS CloudFormation 整合,提供進一步的效能優勢和簡易設定。

問:Amazon CloudFront 支援何種類型的內容?

Amazon CloudFront 支援可使用 HTTP 或 WebSocket 通訊協定傳送的內容。這包括動態網頁和應用程式,例如 HTML 或 PHP 頁面,或者以 WebSocket 為基礎的應用程式,以及屬於 Web 應用程式的任何常用靜態檔案,例如網站影像、音訊、影片、媒體檔案或軟體下載。Amazon CloudFront 還支援透過 HTTP 交付即時或隨需媒體串流。

問:Amazon CloudFront 可與非 AWS 原始伺服器搭配使用嗎?

是。Amazon CloudFront 可與保存原始最終版本內容 (包括靜態和動態) 的任何原始伺服器搭配使用。使用自訂原始伺服器無需額外收費。

問:Amazon CloudFront 如何啟用來源冗餘?

針對新增至 CloudFront 分發中的每個來源,您可以指派一個備份來源,如果主要來源不可用,則該備份來源可用於自動提供流量。您可以選擇 HTTP 4xx/5xx 狀態碼組合,當從主要來源傳回時,將會觸發容錯移轉至備份來源。這兩個來源可以是 AWS 來源和非 AWS 來源的任意組合。

問:Amazon CloudFront 是否提供服務水準協議 (SLA)?

是。如果客戶的每月正常執行時間百分比在任何帳單週期內低於我們的服務承諾,Amazon CloudFront SLA 將提供服務補償。您可在這裡找到更多資訊。

問:AWS 管理主控台可與 Amazon CloudFront 搭配使用嗎?

是。您可以使用 AWS 管理主控台,透過簡單的點選式 Web 界面來設定和管理 Amazon CloudFront。AWS 管理主控台支援大部分的 Amazon CloudFront 功能,讓您能夠利用 Amazon CloudFront 的低延遲交付,而無須編寫任何程式碼或安裝任何軟體。若要存取免費提供的 AWS 管理主控台,請前往 https://console.thinkwithwp.com

問:哪些工具和程式庫可與 Amazon CloudFront 搭配使用?

我們在資源中心提供各種管理 Amazon CloudFront 分發的工具和各種程式設計語言的程式庫。

問:我的 Zone Apex (example.com 與 www.example.com 比較) 可指向 Amazon CloudFront 分發嗎?

是。使用 AWS 的授權 DNS 服務 Amazon Route 53,可讓您設定「別名」記錄,以便對應 DNS 名稱的 Apex 或根 (example.com) 至 Amazon CloudFront 分發。如此一來,Amazon Route 53 即可針對內含您 CloudFront 分發正確 IP 地址的別名記錄,回應個別請求。對應到 CloudFront 分發的別名記錄查詢,Route 53 不收取費用。這些查詢在 Amazon Route 53 用量報告中列為 "Intra-AWS-DNS-Queries"。

節點

問:什麼是 CloudFront 區域節點快取?

CloudFront 透過稱為節點的全球資料中心網路交付內容。區域節點快取位於原始 Web 伺服器和全球節點之間,可直接提供內容給您的檢視者。這有助於為檢視者提升效能,同時降低操作負擔和擴展原始資源的成本。

問:邊緣節點快取如何運作?

Amazon CloudFront 具有多個分佈在全球的邊緣節點快取 (REC),提供額外快取層。它們位於應用程式 Web 伺服器和連接點 (POP) 之間,可直接提供內容給您的使用者。隨著快取物件變得不太受歡迎,個別邊緣節點可能會移除這些物件,以便為更常見的請求內容騰出空間。區域節點快取比所有個別節點擁有更大的快取廣度,因此物件的快取可以保留更長的時間。這有助於將更多內容放在更靠近檢視者的地方,降低 CloudFront 返回原始 Web 伺服器的需要,並為檢視者提升整體效能。舉例來說,在歐洲的 CloudFront 節點現在都連到法蘭克福的區域節點快取,以便在返回原始 Web 伺服器之前擷取物件。區域節點快取位置可用於任何原始伺服器,例如 S3、EC2 或自訂來源。目前託管您的應用程式原始伺服器的區域會跳過 REC。

問:區域節點快取功能是否預設為啟用?

是。您不需要對 CloudFront 分發進行任何變更;所有全新和現有 CloudFront 分發的這個設定都是預設為啟用。使用此功能無須額外付費。

問:Amazon CloudFront 使用的節點網路位置在哪裡?

Amazon CloudFront 使用全球節點網路和區域節點快取進行內容交付。您可以在這裡查看 Amazon CloudFront 位置的完整清單。

問:我可以選擇只在指定國家中提供 (或不提供) 內容嗎?

可以,地理限制功能可讓您指定國家清單,只開放當地的使用者存取內容。或者,您可以指定國家,禁止當地的使用者存取內容。在這兩種情況中,如果檢視者來自受限的國家,CloudFront 會對請求回應 HTTP 狀態代碼 403 (已禁止)。

問:GeoIP 資料庫的準確度如何?

IP 地址的國家/地區查詢資料庫準確度會視地區而有所不同。根據最近的測試結果,我們的整體 IP 地址國家對應準確度為 99.8%。

問:我可以向最終使用者顯示自訂錯誤訊息嗎?

可以,您可以運用自己的品牌風格和內容,針對各種 HTTP 4xx 和 5xx 錯誤回應建立自訂錯誤訊息 (例如 HTML 檔或 .jpg 圖片)。接著,您可以在原始伺服器傳回其中一個指定錯誤給 Amazon CloudFront 時,設定 CloudFront 將自訂錯誤訊息傳給檢視者。

問:Amazon CloudFront 會在節點將我的檔案保留多久?

在預設情況下,如果未設定快取控制標頭,只要節點收到請求的時間與上次檢查來源以取得檔案變更的間隔超過 24 小時,就會檢查是否有該檔案的更新版本。這段時間稱為「過期期間」。 您可以透過在原始伺服器中的檔案設定快取控制標頭,將此過期期間設定為最短 0 秒或最長至您需要的任意時間。Amazon CloudFront 會使用這些快取控制標頭,決定要多久檢查一次來源中是否有該檔案的更新版本。對於設定為 0 秒的過期期間,Amazon CloudFront 將會和原始伺服器重新驗證每個請求。如果檔案沒有經常變更,最佳實務是設定較長的過期期間,並實施版本控制系統,以管理檔案更新。

問:要如何從 Amazon CloudFront 節點移除項目?

要從節點中移除檔案有多個選項。只需將檔案從原始伺服器刪除,當節點中的內容到達每個物件 HTTP 標頭中定義的過期期間時,就會移除。如有具攻擊性或具潛在傷害的物件需要在指定過期時間之前就先移除,您可以使用 Invalidation API 將該物件從所有 Amazon CloudFront 節點中移除。您可以在這裡查看發出失效請求的費用。

問:失效請求數量是否有上限?

若您是個別將物件設為失效,則每次分發最多可同時為 3,000 個物件發出失效請求。這可以是多達 3,000 個物件的單一失效請求,或是每個物件各提出一個請求 (最多 3,000 個),也可以是物件總數不超過 3,000 個的任何其他請求組合。

如果您使用 * 萬用字元,則一次可以提出最多 15 個失效路徑的請求。您也可以為每個分發同時提出最多 3,000 個單獨物件的失效請求,而萬用字元失效請求的限制與個別失效物件限制無關。如果超過此限制,必須先完成之前其中一個請求,否則額外的失效請求將會收到錯誤回應。

失效請求只應在意外情況下使用;如果您事先知道必須經常從快取移除檔案,建議您為檔案實施版本控制系統並/或設定較短的過期期間。

內嵌存在點

問:什麼是 CloudFront 內嵌式連接點 (POP)?

CloudFront 內嵌式連接點 (POP) 是網際網路服務供應商 (ISP) 和行動網路營運商 (MNO) 網路內,一種部署至最接近終端檢視者的 CloudFront 基礎設施。內嵌式 POP 是旨在提供大規模即時串流活動、隨需影片 (VOD) 和遊戲下載的定製設計。這些內嵌式 POP 由 Amazon 擁有和營運,並部署在 ISP/MNO 網路的最後一英里,以避免連線終端檢視者與內容來源的壅塞網路中出現容量瓶頸,從而提高效能。

問:CloudFront 內嵌式 POP 與 CloudFront POP 有何差異?

CloudFront 內嵌式 POP 與 CloudFront POP 在部署位置及交付的內容上有所差異。CloudFront 內嵌式 POP 直接部署在 ISP 和 MNO 網路中,與之不同的是,CloudFront POP 部署在 AWS 網路中。內嵌式 POP 專為交付大規模的可快取流量 (例如影片串流和遊戲下載) 設計,而 CloudFront POP 旨在交付各種工作負載,包括可快取和動態內容。

問:哪些工作負載最適合 CloudFront 內嵌式 POP?

CloudFront 內嵌式 POP 旨在提供可快取內容,可供許多終端檢視者同時存取,例如大規模即時影片串流、隨需影片和遊戲下載。

問:使用內嵌式 POP 是否需要另外收費?

否,使用 CloudFront 內嵌式 POP 無需額外費用。

問:如何取得內嵌式 POP 的存取權?

內嵌式 POP 是一種選擇加入功能,旨在交付大規模的可快取流量。請聯絡您的 AWS 銷售代表,以評估內嵌式 POP 是否適合您的工作負載。

問:我是否需要為 CloudFront 內嵌式 POP 建立新的 CloudFront 發行版?

否,您無需針對內嵌式 POP 專門建立新的發行版。如果您的工作負載符合資格,CloudFront 將根據請求為您現有的發行版啟用內嵌式 POP。

問:我是否需要在 CloudFront 內嵌式 POP 與 CloudFront POP 之間做出選擇?

您無需在 CloudFront 內嵌式 POP 或 CloudFront POP 之間做出選擇來進行內容交付。您的 CloudFront 發行版啟用內嵌式 POP 後,CloudFront 的路由系統會動態利用 CloudFront POP 和內嵌式 POP 來交付內容,從而確保最終使用者取得最佳效能。

問:我是 ISP,如何開始在我的網路中新增內嵌式 POP?

聯絡我們,開始在您的網路中部署內嵌式 POP。

問:我是 ISP,如何管理網路中的內嵌式 POP?

您可以使用內嵌式 POP 入口網站,來管理部署在網路中的內嵌式 POP。內嵌式 POP 入口網站與 AWS 互連入口網站整合,並提供統一的介面,可輕鬆地自助執行與這些 POP 的整個生命週期關聯的各種任務。這包括請求新設備、追蹤請求進度、監控效能統計資料,以及請求支援。您可使用 PeeringDB 帳戶透過單一登入 (SSO) 進行驗證,來存取入口網站

合規

問:Amazon CloudFront 是否符合 PCI?

Amazon CloudFront [不包含透過 CloudFront 內嵌式 POP 的內容交付] 已列入與支付卡產業資料安全標準 (PCI DSS) 商家等級 1 (服務供應商最高層級) 相容的服務中。請參閱我們的開發人員指南了解詳細資訊。

問:Amazon CloudFront 是否符合 HIPAA 資格?

AWS 已經擴展其 HIPAA 合規計劃,將 Amazon CloudFront [不包含透過 CloudFront 內嵌式 POP 的內容交付] 納入 HIPAA 合格服務。如果您擁有與 AWS 共同履行的商業夥伴協議 (BAA),可以使用 Amazon CloudFront [不包含透過 CloudFront 內嵌式 POP 的內容交付] 加速受保護醫療資訊 (PHI) 的交付。 如需詳細資訊,請參閱 HIPAA 合規和我們的開發人員指南

問:Amazon CloudFront 是否符合 SOC?

Amazon CloudFront [不包含透過 CloudFront 內嵌式 POP 的內容交付] 符合 SOC (系統和組織控制) 措施。SOC 報告是獨立的第三方檢驗報告,其中展現了 AWS 如何達成關鍵合規性控制與目標。 如需詳細資訊,請參閱 AWS SOC 合規和我們的開發人員指南

問:如何請求 AWS SOC 1、SOC 2 或 SOC 3 報告?

使用 AWS Artifact (隨需存取 AWS 合規報告的自助服務入口網站) 可將 AWS SOC 1 和 SOC 2 報告提供給客戶。登入 AWS 管理主控台中的 AWS Artifact,或者參閱 AWS Artifact 入門進一步了解詳細資訊。AWS 網站已公開發布最新的 AWS SOC 3 報告

HTTP、HTTP/2 和 HTTP/3

問:Amazon CloudFront 支援哪些類型的 HTTP 請求?

Amazon CloudFront 目前支援 GET、HEAD、POST、PUT、PATCH、DELETE 和 OPTIONS 請求。

問:Amazon CloudFront 是否會快取 POST 回應?

Amazon CloudFront 不會快取 POST、PUT、DELETE 和 PATCH 請求的回應;這些請求會代理回原始伺服器。您可以快取對 OPTIONS 請求的回應。

問:如何使用 HTTP/2?

如果您有現有的 Amazon CloudFront 分發,可以使用 API 或管理主控台開啟 HTTP/2。在主控台中,移至 "Distribution Configuration" 頁面,然後瀏覽到 "Supported HTTP Versions" 部分。 您可以在該處選取 "HTTP/2、HTTP/1.1 或 HTTP/1.0"。所有新的 CloudFront 分發都會自動啟用 HTTP/2。

問:如果我的原始伺服器不支援 HTTP/2,該怎麼辦?

Amazon CloudFront 目前支援使用 HTTP/2 將內容交付到檢視者的用戶端和瀏覽器。對於節點和原始伺服器之間的通訊,Amazon CloudFront 將繼續使用 HTTP/1.1。

問:Amazon CloudFront 是否支援不含 TLS 的 HTTP/2?

目前並未支援。不過,大部分的現代瀏覽器都僅支援加密連線的 HTTP/2。您可以在這裡進一步了解如何將 SSL 與 Amazon CloudFront 搭配使用。

問:什麼是 HTTP/3?

HTTP/3 是超文字傳輸協定的第三個主要版本。HTTP/3 使用 QUIC,這是一種以使用者資料包協定 (UDP) 為基礎、串流多工的安全傳輸協定,其結合並改善了現有傳輸控制協定 (TCP)、TLS 和 HTTP/2 的功能。相較於之前的 HTTP 版本,HTTP/3 提供多項優勢,包括更快的回應時間和增強的安全性。

問:什麼是 QUIC?

HTTP/3 由 QUIC 提供支援,這是一種全新的高效能、彈性和安全的網際網路傳輸協定。CloudFront 的 HTTP/3 支援在 s2n-quic 之上建置,這是 Rust 中一種全新的開放原始碼 QUIC 協定實作。若要進一步了解有關 QUIC 的資訊,請參閱「s2n-quic 簡介」部落格。 

問:將 HTTP/3 與 Amazon CloudFront 搭配使用具有哪些主要優勢?

客戶一直在尋求為其最終使用者提供更快、更安全的應用程式。隨著全球網際網路普及率的提高,以及越來越多的使用者透過行動裝置和遠端網路上網,對改善效能和可靠性的需求比以往任何時候都更大。HTTP/3 實現了這一點,因為其比之前的 HTTP 版本提供了多項效能改善:

  1. 更快、更可靠的連線 – CloudFront 使用 1-RTT 進行 HTTP/3 的 TLS 握手,相較於之前的 HTTP 版本,其減少了連線建立時間並相應減少了握手失敗。
  2. 更出色的 Web 效能 – CloudFront 的 HTTP/3 實作支援用戶端連線遷移,允許用戶端應用程式以最少的中斷從不良的連線中恢復。與 TCP 不同,QUIC 並非無損,因此更適合具有高丟包率的擁塞網路。此外,QUIC 允許在 Wifi 或蜂窩網路切換期間更快地重新連線。
  3. 安全性 – 相較於之前的 HTTP 版本,HTTP/3 透過對 TLS 握手期間交換的封包加密,來提供更全面的安全性。這使得中間盒的檢查更加困難,提供了額外的隱私性,並減少了中間人攻擊。CloudFront 的 HTTP/3 支援在 s2n-quic 和 Rust 之上建置,兩者都非常強調效率和效能。

問:如何在我的 CloudFront 分發上啟用 HTTP/3?

您可以使用 CloudFront 主控台、UpdateDistribution API 動作或使用 Cloudformation 範本,為新的和現有的 Amazon CloudFront 分發啟用 HTTP/3。在主控台中,移至 "Distribution Configuration" (分發組態) 頁面,然後導覽至 "Supported HTTP Versions" (支援的 HTTP 版本) 部分。 您可以在此選擇「HTTP/3、HTTP/2、HTTP/1.1 或 HTTP/1.0」。

問:在啟用 HTTP/3 之前,我是否需要對我的應用程式進行變更?

您在 CloudFront 分發上啟用 HTTP/3 後,CloudFront 會自動新增 Alt-Svc 標頭,用於宣告 HTTP/3 支援可供使用,而無須您手動新增 Alt-Svc 標頭。我們希望您在應用程式中啟用對多種協定的支援,這樣如果應用程式無法建立 HTTP/3 連線,則會回復至 HTTP /1.1 或 HTTP/2。即,不支援 HTTP/3 的用戶端仍然能夠使用 HTTP/1.1 或 HTTP/2,與啟用 HTTP/3 的 CloudFront 分發通訊。回復支援是 HTTP/3 規範的必要部分,由支援 HTTP/3 的所有主要瀏覽器實作。

問:如果我的原始伺服器不支援 HTTP/3,該怎麼辦?

CloudFront 目前支援 HTTP/3,用於檢視者的用戶端/瀏覽器和 CloudFront 邊緣節點之間的通訊。針對邊緣節點和原始伺服器之間的通訊,Amazon CloudFront 將繼續使用 HTTP/1.1。

問:Amazon CloudFront 的 TLS 安全政策如何與 HTTP/3 互動?

HTTP/3 使用 QUIC,這需要 TLSv1.3。因此,與您選擇的安全政策無關,只有 TLSv1.3 和受支援的 TLSv1.3 密碼套件可用於建立 HTTP/3 連線。如需詳細資訊,請參閱《CloudFront 開發人員指南》的「檢視者與 CloudFront 之間的支援協定和密碼」部分。

問:啟用 HTTP/3 是否需要單獨收費?

否,在 Amazon CloudFront 分發上啟用 HTTP/3 不會單獨收費。HTTP/3 請求將依據您的定價計畫,按請求定價費率計費。

WebSocket

問:什麼是 WebSockets?

WebSocket 是即時通訊協定,可經由長時間的 TCP 連線為用戶端和伺服器之間提供雙向通訊。使用持久性開啟的連線,用戶端和伺服器可以傳送即時資料給彼此,而不需要用戶端經常重新起始連線檢查以讓新資料進行交換。WebSocket 連線經常用於聊天應用程式、協作平台、多玩家遊戲和金融平台。請參閱我們的文件,進一步了解如何將 WebSocket 通訊協定與 Amazon CloudFront 搭配使用。 

問: 如何啟用我的 Amazon CloudFront 分發以支援 WebSocket 通訊協定?

您可以全面使用 WebSockets,不需額外進行組態即可在您的 CloudFront 資源中啟用 WebSocket 通訊協定,因為它現在已預設支援。

問:何時透過 Amazon CloudFront 建立 WebSocket 連線?

僅當用戶端包含 'Upgrade: websocket' 標頭,並且伺服器以 HTTP 狀態碼 101 回應確認其可以切換至 WebSocket 通訊協定時,Amazon CloudFront 才會建立 WebSocket 連線。

問:Amazon CloudFront 是否支援透過 TLS 建立的安全 WebSocket?

是。Amazon CloudFront 支援使用 SSL/TLS 通訊協定建立的加密 WebSocket 連線 (WSS)。

安全

問:是否可將 CloudFront 分發設為使用我自己的網域名稱透過 HTTPS 交付內容?

預設情況下,您可以在 URL 中使用 CloudFront 分發網域名稱,透過 HTTPS 將內容交付給檢視者,例如 https://dxxxxx.cloudfront.net/image.jpg。如果您想使用自己的網域名稱和 SSL 憑證透過 HTTPS 交付內容,則可以使用我們的其中一個自訂 SSL 憑證支援功能。進一步了解

問:什麼是欄位級加密?

欄位級加密是 CloudFront 的一項功能,可讓您將使用者提交的資料 (例如信用卡號碼) 安全地上傳到原始伺服器。使用此功能,可以透過您提供的欄位特定加密金鑰以 HTTPS 的形式進一步加密敏感資料,再將 PUT/ POST 請求轉送到原始伺服器。這能確保機密資訊僅能經由您應用程式堆疊中的特定元件或服務,進行解密與查閱。要進一步了解欄位級加密,請參閱我們文件中的欄位級加密

問:我已經使用 SSL/TLS 加密搭配 CloudFront,是否還需要欄位級加密?

許多 Web 應用程式會向使用者蒐集機密資訊,例如信用卡號碼,並經過原始基礎設施上執行的應用程式服務處理資訊。在最終使用者與 CloudFront,以及 CloudFront 與您的原始伺服器的連線間,這些 web 應用程式使用 SSL/TLS 加密。現在,您的原始伺服器可以有許多微型服務,可根據使用者輸入的內容執行重要操作。但是,通常這些微型服務中只有少部分才真的需要取得敏感資訊,也就是說大多數元件直接存取這些資料並無任何意義。一個簡單的程式設計錯誤,例如記錄錯誤的變數,可能會導致客戶的信用卡號碼被寫入檔案中。

CloudFront 的節點在欄位層級資料加密功能下,可加密信用卡資料。在加密後,只有擁有私密金鑰的程式可解密機密欄位,也就是說,訂單履行服務僅能查閱經加密的信用卡號,但付款服務可解密信用卡資料。即使有應用程式服務洩漏了密碼文字,其資料仍處在加密保護狀態,達到更高的安全性。

問:Amazon CloudFront 的 SNI 自訂 SSL 和專用 IP 自訂 SSL 有何不同?

專用 IP 自訂 SSL 會分配專用 IP 地址,在每個 CloudFront 節點為 SSL 內容提供服務。因為 IP 地址和 SSL 憑證之間有一對一對應,專用 IP 自訂 SSL 可與瀏覽器和其他不支援 SNI 的用戶端搭配使用。考量目前的 IP 地址的成本,專用 IP 自訂 SSL 每月費用為 600 USD,按小時比例計費。

SNI 自訂 SSL 倚賴 Transport Layer Security 協定的 SNI 延伸,透過包含嘗試連接的主機名稱檢視器,允許多個網域透過相同的 IP 地址傳輸 SSL 流量。就專用 IP 自訂 SSL 來說,CloudFront 從每個 Amazon CloudFront 節點交付內容,同時具備與專用 IP 自訂 SSL 功能相同的安全性。SNI 自訂 SSL 可與多數現代瀏覽器搭配使用,包括 Chrome 第 6 版和更新版 (執行作業系統為 Windows XP 和更新版,或 OS X 10.5.7 和更新版)、Safari 第 3 版和更新版 (執行作業系統為 Windows Vista 和更新版,或 Mac OS X 10.5.6 和更新版)、Firefox 2.0 和更新版,以及 Internet Explorer 7 和更新版 (執行作業系統為 Windows Vista 和更新版)。不支援 SNI 的舊型瀏覽器則無法與 CloudFront 建立連線,載入您內容的 HTTPS 版本。SNI 自訂 SSL 只收取標準 CloudFront 資料傳輸和請求費用,沒有其他額外費用。

問:伺服器名稱指示是什麼?

伺服器名稱指示 (SNI) 是一種 Transport Layer Security (TLS) 協定的延伸。此機制可識別相關 SSL 請求的網域 (伺服器名稱),以便在 SSL 信號交換中使用適當的憑證。這可讓單一 IP 地址用於多部伺服器。SNI 需要瀏覽器支援才能加入伺服器名稱,大多數現代瀏覽器都提供支援,只有少部分舊型瀏覽器不支援。如需詳細資訊,請參閱 CloudFront 開發人員指南的 SNI 部分或 SNI 維基百科文章

問:CloudFront 是否與 AWS Certificate Manager 整合?

是,現在您可以在幾分鐘內佈建 SSL/TLS 憑證並將它們與 CloudFront 分發關聯。只需使用新的 AWS Certificate Manager (ACM) 佈建憑證,再按幾下滑鼠部署到 CloudFront 分發,然後讓 ACM 為您管理憑證更新。ACM 可讓您佈建、部署和管理憑證,不需另外付費。

請注意,CloudFront 仍支援使用您從第三方憑證授權機構取得並上傳到 IAM 憑證存放區的憑證。

問:Amazon CloudFront 是否支援付費內容或私有內容的存取控制?

是,Amazon CloudFront 有選用的私有內容功能。啟用此選項時,Amazon CloudFront 將對您的請求進行安全簽名,僅在您允許時才交付檔案。閱讀 CloudFront Developer Guide 進一步了解這項功能。

問:如何保護透過 CloudFront 交付的 Web 應用程式不受 DDoS 攻擊?

AWS 客戶可使用 AWS Shield Standard,無須額外付費。AWS Shield 是一種受管服務,可為 AWS 上執行的 Web 應用程式防禦 DDoS 攻擊。AWS Shield Standard 可為所有 AWS 客戶提供保護,防禦常見且最常發生在基礎設施 (Layer 3 與 Layer 4) 的攻擊,如 SYN/UDP 泛洪、反射式攻擊等,賦予 AWS 上執行的應用程式高可用性。

AWS Shield Advanced 是選用付費服務,AWS Business Support 與 AWS Enterprise Support 客戶皆可使用。AWS Shield Advanced 可為 Elastic Load Balancing (ELB)、Amazon CloudFront 與 Route 53 上執行的應用程式提供額外保護,攔截更大型的複雜攻擊。

問:如何保護透過 CloudFront 交付的 Web 應用程式?

您可將 CloudFront 分發與 AWS WAF 整合,AWS WAF 是一種 Web 應用程式防火牆,可讓您根據 IP 地址、HTTP 標頭和自訂 URI 字串來設定規則,協助保護 Web 應用程式不受攻擊。AWS WAF 可使用這些規則封鎖、允許或監控 (計算) Web 應用程式的 Web 請求。請參閱 AWS WAF Developer Guide 了解更多資訊。

快取

問:可以新增或修改轉發到原始伺服器的請求標頭?

可以,您可以設定 Amazon CloudFront 新增自訂標頭或覆寫現有標頭的值到轉發至原始伺服器的請求。您可以使用這些標頭來協助驗證對您原始伺服器所做的請求是傳送自 CloudFront;您甚至可以設定原始伺服器只允許包含您指定之自訂標頭值的請求。此外,如果您為同一個原始伺服器使用多個 CloudFront 分發,則可以使用自訂標頭來區分每個不同分發對原始伺服器的請求。最後一點,自訂標頭可用來協助判斷為您的請求傳回正確 CORS 標頭。您可以透過 CloudFront API 和 AWS 管理主控台設定自訂標頭。這項功能無須額外收費。如需如何設定自訂標頭的詳細資訊,可在這裡閱讀更多資料。

問:Amazon CloudFront 如何處理 HTTP Cookie?

Amazon CloudFront 支援使用 HTTP Cookie 自訂或個人化的動態內容交付。要使用此功能,您需要指定是否希望 Amazon CloudFront 將部分或全部 Cookie 轉發到自訂原始伺服器。Amazon CloudFront 就會在識別其快取中的唯一物件時考慮轉發 Cookie 的值。利用這種方式,最終使用者不但可以透過 Cookie 取得個人化的內容,還能獲得 Amazon CloudFront 的效能優勢。您也可以選擇在 Amazon CloudFront 存取日誌中記錄 Cookie 值。

問:Amazon CloudFront 如何處理 URL 中的查詢字串參數?

您可選擇將查詢字串設為快取金鑰的一部分,以便在 Amazon CloudFront 快取中識別物件。這有助於您建立可在節點上快取特定時間的動態網頁 (例如搜索結果)。

問:可以指定要在快取金鑰中使用哪些查詢參數嗎?

可以,查詢字串白名單功能可讓您輕鬆地設定 Amazon CloudFront 在快取金鑰中只使用特定參數,同時仍將所有參數轉發到原始伺服器。

問:可列入白名單的查詢參數是否有數目限制?

是,Amazon CloudFront 的白名單最多可設定 10 個查詢參數。

問:支援哪些參數類型?

Amazon CloudFront 支援在 RFC3986 第 3.4 節中定義的 URI 查詢參數。具體來說,它支援內嵌在 HTTP GET 字串中查詢參數,這些參數位於 '?' 字元的後面,且由 '&' 字元分隔。

問:CloudFront 是否支援 gzip 壓縮?

是,CloudFront 可自動壓縮您的文字或二進位資料。若要使用這個功能,只需在快取行為設定中指定讓 CloudFront 自動壓縮物件,並確認您的用戶端在請求標頭中加入 Accept-Encoding: gzip (大部分現代的 Web 瀏覽器預設都會這樣做)。如需此功能的詳細資訊,請參閱我們的開發人員指南

串流

問:什麼是串流? 為什麼我要進行串流?

一般情況下,串流指的是透過網際網路將音訊和影片交付給最終使用者,而無須在播放前下載媒體檔案。串流使用的協定包含透過 HTTP 進行交付的協定,像是 Apple 的 HTTP Live Streaming (HLS)、MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH)、Adobe 的 HTTP Dynamic Streaming (HDS) 和 Microsoft 的 Smooth Streaming。這些協定與交付網頁和其他線上內容不同,因為串流協定會即時交付媒體 – 瀏覽者可在內容位元組交付期間同時觀看內容。使用串流內容對您和您的最終使用者來說有幾個優勢:

  • 檢視者可透過串流進一步掌控檢視體驗。例如,與使用傳統下載交付相比,使用串流讓瀏覽者更容易在影片中向前和向後搜尋。
  • 串流讓您對內容有更多的控制,因為瀏覽者觀看完影片之後,不會有任何檔案保留在其用戶端或本機磁碟上。
  • 串流能夠幫助您降低成本,因為它僅交付瀏覽者實際觀看的媒體檔案部分。反之,使用傳統下載,通常會將整個媒體檔案交付給瀏覽者,即使他們僅觀看檔案的一部分也是如此。

問:Amazon CloudFront 是否支援隨選視訊 (VOD) 串流協定?

是,Amazon CloudFront 為您提供多種選項,方便您交付隨需視訊內容。如果您的媒體檔案在存放到 Simple Storage Service (Amazon S3) (或自訂原始伺服器) 之前已轉換為 HLS、MPEG-DASH 或 Microsoft Smooth Streaming 格式 (例如使用 AWS Elemental MediaConvert),則可以使用 Amazon CloudFront Web 分發以該格式進行串流,而無須執行任何媒體伺服器。

或者,您也可以在 Amazon EC2 上執行第三方串流伺服器 (例如,AWS Marketplace 提供的 Wowza Media Server),將媒體檔案轉換為所需的 HTTP 串流格式。然後,可以將該伺服器指定為 Amazon CloudFront Web 分發的原始伺服器。

請瀏覽 AWS 頁面上的隨選視訊 (VOD) 進一步了解。

問:Amazon CloudFront 是否支援即時串流至多個平台?

是。您可以使用 Amazon CloudFront 即時串流搭配輸出 HTTP 串流的任何即時影片創作服務,像是 AWS Elemental MediaPackageAWS Elemental MediaStore。MediaPackage 是影片創作和 just-in-time 封裝服務,可讓影片分發者使用多種交付和內容保護標準,以安全可靠的方式大規模交付串流內容。MediaStore 是 HTTP 起始和儲存服務,可提供即時媒體所需的高效能、立即一致性以及可預測的低延遲,同時還結合了 Amazon 儲存的安全性和耐久性。

請瀏覽 AWS 即時影片串流頁面以進一步了解。

Origin Shield

問:什麼是 Origin Shield?

Origin Shield 是一個集中式快取層,能協助提升快取命中率,從而減少原始伺服器上的負載。Origin Shield 也透過跨區域摺疊請求來降低原始伺服器的營運成本,這樣每個物件只有一個請求會到達原始伺服器。啟用後,CloudFront 會透過 Origin Shield 路由所有來源擷取內容,而且只會在內容尚未儲存至 Origin Shield 的快取時,向您的原始伺服器發出請求。

問:何時應使用 Origin Shield?

Origin Shield 非常適用於遍布各個地理區域的觀眾,或是涉及影片串流即時封裝、即時影像處理或類似程序的工作負載。將 Origin Shield 設置在原始伺服器前面,即可在檢查其中央快取後,僅針對不在 Origin Shield 快取中的內容進行合併來源擷取,藉此減少冗餘的來源擷取次數。同樣地,您也可以在多重 CDN 架構中使用 Origin Shield,將 Amazon CloudFront 定位為其他 CDN 的來源,以減少 CDN 的重複來源擷取次數。如需詳細資訊,請參閱 Amazon CloudFront 開發人員指南和其他 Origin Shield 使用案例

問:我應該使用哪個 Origin Shield 區域?

Amazon CloudFront 會在具備有區域節點快取之 CloudFront 的 AWS 區域中提供 Origin Shield。啟用 Origin Shield 後,您必須為 Origin Shield 選擇對原始伺服器延遲最低的 AWS 區域。Origin Shield 可搭配 AWS 區域內外的原始伺服器使用。如需詳細資訊,請參閱 Amazon CloudFront 開發人員指南中的為 Origin Shield 選擇 AWS 區域一節。

問:Origin Shield 是否有彈性且高度可用?

是。所有 Origin Shield 區域都是使用橫跨多個可用區域的高可用性架構所建置,包含可自動調整規模的 Amazon EC2 執行個體叢集。CloudFront 位置與 Origin Shield 的連線也會針對每項請求使用有效的錯誤追蹤,以便在主要的 Origin Shield 位置無法使用時,自動將請求路由到次要的 Origin Shield 位置。

限制

問:如果預期用量峰值會高於 150 Gbps 或 250,000 RPS,是否可使用 Amazon CloudFront?

是。請在這裡填寫提高限制的請求,我們將在兩個工作日之內為您的帳戶新增更多容量。

問:Amazon CloudFront 帳戶可交付的分發數量是否有限制?

如需了解目前您可為每個 AWS 帳戶建立的分發數量上限,請參閱 Amazon Web Services General Reference 中的 Amazon CloudFront 限制。如想提高上限,請填寫 CloudFront 提高限制申請表

問:可透過 Amazon CloudFront 交付的檔案大小上限為何?

可透過 Amazon CloudFront 交付的單一檔案大小上限為 30 GB。此限制適用於所有 Amazon CloudFront 分發。

日誌記錄和報告

問:Amazon CloudFront 可以使用哪些日誌記錄功能?

您可以在建立或修改 CloudFront 分發時,啟用存取日誌記錄。CloudFront 提供了兩種方法來記錄從您的分發傳遞的請求:標準日誌即時日誌

CloudFront 標準日誌將傳遞至您選擇的 Amazon S3 儲存貯體 (日誌記錄在檢視者請求後幾分鐘內傳遞)。啟用 CloudFront 後,即可以 W3C 延伸格式將詳細的日誌資訊自動發佈至您指定的 Amazon S3 儲存貯體。存取日誌包含針對您的內容提出之每個請求的詳細資訊,包括請求的物件、請求的日期和時間、處理請求的節點、用戶端 IP 地址、推薦網站、使用者代理器、Cookie 標頭以及結果類型 (例如快取命中、未命中或錯誤)。雖然您需要為存放和存取日誌檔案支付 Amazon S3 費用,但 CloudFront 不會對標準日誌收費。

CloudFront 即時日誌將傳遞至您在 Amazon Kinesis Data Streams 中選擇的資料串流 (日誌記錄在檢視者請求後幾秒鐘內傳遞)。您可以為即時日誌選擇取樣率,即要接收即時日誌記錄的請求百分比。此外,您還可以選擇要在日誌記錄中接收的特定欄位。CloudFront 即時日誌包含與標準日誌相同的所有資料點,還包含有關每項請求的某些附加資訊,例如採用 W3C 擴展格式的檢視者請求標頭和國家/地區代碼。除了使用 Kinesis Data Streams 所產生的費用外,CloudFront 還會收取即時日誌的費用。

問:如何確定適用於我的使用案例的 CloudFront 日誌?

您可以根據使用案例選擇目的地。如果您具有時間緊迫性使用案例,並且需要在幾秒內快速存取日誌資料,則選擇即時日誌。如果您需要更實惠的即時日誌管道,則可選擇透過僅針對特定快取行為啟用日誌,或選擇較低的取樣率來篩選日誌資料。即時日誌管道可用於快速資料傳遞。因此,如果存在資料延遲,則可能會刪除日誌記錄。另一方面,如果您需要低成本日誌處理解決方案,不需要即時資料,則目前的標準日誌選項非常適合您。S3 中的標準日誌是專為完整性建置,並且通常會在幾分鐘內提供這些日誌。可以針對整體分發而非特定快取行為啟用這些日誌。因此,如果需要用於臨時調查、稽核和分析的日誌,則可以選擇僅在 S3 中啟用標準日誌。您可以選擇使用兩種日誌的組合。使用即時日誌篩選清單洞察操作,然後使用標準日誌進行稽核。

問:提供哪些不同的日誌目的地選項?
CloudFront 標準日誌已傳遞至您的 S3 儲存貯體。此外,您還可以使用第三方解決方案 (如 DataDog 和 Sumologic) 的整合建置,從這些日誌中建立儀表板。

即時日誌將傳遞至您的 Kinesis Data Stream。可以從 Kinesis Data Streams 將日誌發佈至 Amazon Kinesis Data Firehose。Amazon Kinesis Data Firehose 支援將資料輕鬆傳遞至 Amazon S3、Amazon Redshift、Amazon Elasticsearch Service,以及 Datadog、New Relic 和 Splunk 等服務供應商。此外,Kinesis Firehose 還支援將資料傳遞至通用 HTTP 端點。

問:在 Kinesis Data Stream 中需要多少個 Kinesis 分區?
使用下列步驟來估計所需的分區數量:

  1. 計算 (或估計) 您的 CloudFront 分發每秒收到的請求數。您可以使用 CloudFront 用量報告或 CloudFront 指標,來協助您計算每秒的請求數。
  2. 確定單一即時日誌記錄的典型大小。包含所有可用欄位的典型記錄約為 1 KB。如果不確定日誌記錄的大小,您可以啟用取樣率較低 (例如 1%) 的即時日誌,然後使用 Kinesis Data Streams 中的監控資料,來計算平均記錄大小 (總數記錄數除以總傳入位元組數)。
  3. 將每秒的請求數 (步驟 1 得出) 乘以典型的即時日誌記錄大小 (步驟 2 得出),確定您的即時日誌組態可能傳送至 Kinesis Data Stream 的每秒資料量。
  4. 使用每秒資料量計算所需的分區數量。單一分區每秒可處理不超過 1 MB,以及每秒處理 1,000 個請求 (日誌記錄)。在計算所需分區數量時,我們建議新增最多 25% 的緩衝區。

例如,假設您的分發每秒接收 10,000 個請求,您的即時日誌記錄大小通常為 1 KB。這意味著您的即時日誌組態每秒可產生 10,000,000 位元組 (10,000 x 1,000) 或9.53 MB。在此情況下,您只需要 10 個 Kinesis 分區。您應考慮建立至少 12 個分區以便擁有一些緩衝區。

問:Amazon CloudFront 是否提供直接可用的報告,方便我進一步了解使用量、瀏覽者和提供的內容?

是。Amazon CloudFront 提供多種解決方案以滿足您對報告功能的需求,包括接收詳細的快取統計報告、監控 CloudFront 使用量、查看客戶從哪個位置檢視您的內容,或對可操作指標設定近乎即時的警示。您可以瀏覽 AWS 管理主控台中的 Amazon CloudFront Reporting & Analytics 儀表板,以存取所有報告選項。您也可以查看 Amazon CloudFront 的 Reports & Analytics 頁面,進一步了解各種報告選項。

問:是否可以標記我的分發?

是。Amazon CloudFront 支援成本分配標記。標籤透過分類和分組 AWS 資源,讓您輕鬆分配成本並優化支出。例如,您可以使用標籤,依管理員、應用程式名稱、成本中心或特定專案分組資源。要進一步了解有關成本分配標記的資訊,請參閱使用成本分配標籤。如果您準備好在 CloudFront 分發新增標籤,請參閱 Amazon CloudFront 新增標籤頁面

問:是否能取得我的帳戶上所有 Amazon CloudFront API 呼叫的歷史記錄,以用於安全、操作或合規稽核?

是。若要取得針對您帳戶發出的所有 Amazon CloudFront API 呼叫歷史記錄,您只需在 CloudTrail AWS 管理主控台中開啟 AWS CloudTrail。如需詳細資訊,請瀏覽 AWS CloudTrail 首頁

問:是否提供即時監控和警示指標的選項?

使用 Amazon CloudWatch,您可在收到檢視者請求的短短幾分鐘內,對 Amazon CloudFront 分發的操作效能進行監控、發出警示及接收通知。CloudFront 會自動將六個執行指標發布至 Amazon CloudWatch,每個間隔 1 分鐘。然後,您可以使用 CloudWatch 對 CloudFront 流量的任何異常情況設定警示。若要了解如何透過 CloudWatch 開始監控 CloudFront 活動和設定警示,請參閱我們在 Amazon CloudFront 開發人員指南中的逐步指示,您也可以直接導覽至 Amazon CloudFront 管理主控台,選擇導覽面板的 Monitoring & Alarming 連結。

CloudFront Function

問:什麼是 CloudFront Function?

CloudFront Function 是無伺服器邊緣運算功能,允許您在 CloudFront 邊緣節點為輕量級 HTTP 轉換和操作執行 JavaScript 程式碼。Functions 專門設計用於為客戶提供整個程式設計環境的靈活性,具有現代 Web 應用程式需要的效能和安全性。價格只是 AWS Lambda@Edge 的一小部分,客戶可以即時擴展,以經濟實惠的方式支援每秒數百萬個請求。

問:如何使用 CloudFront Function 自訂內容?

CloudFront Function 原生建置於 CloudFront,允許客戶在相同伺服器內輕鬆建置、測試和部署函數。您還可以結合使用 CloudFront KeyValueStore 與 CloudFront Functions 來儲存與擷取查詢資料以補充您的函數邏輯。GitHub 儲存庫 提供用來作為建置函數起點的大型範例程式碼集合,讓開發人員可以輕鬆開始使用。您可以在 CloudFront 主控台中使用 IDE,或 CloudFront API/CLI 來建置函數。撰寫程式碼後,您可以針對生產 CloudFront 分發測試您的函數,確保函數在部署後可以正常執行。主控台中的測試功能提供視覺化編輯器,以迅速建立測試事件,驗證函數。關聯至 CloudFront 分發後,為回應 CloudFront 請求,程式碼會部署至 AWS 的全球分佈式節點網路進行執行。

問:CloudFront Function 的使用案例是什麼?

CloudFront Function 是以下輕量級、執行時間較短函數的理想之選:

  • 快取金鑰標準化:您可以轉換 HTTP 請求屬性 (標頭、查詢字串、Cookie,甚至請求 URL 相關的路徑),以建立最佳快取金鑰,以提升您的快取命中率。
  • 標頭操作:您可以在請求或回應中插入、修改或刪除 HTTP 標頭。例如,您可以為每個回應新增 HTTP 嚴格傳輸安全性 (HSTS) 或跨來源資源分享 (CORS) 標頭。
  • URL 重新導向或重寫:您可以根據請求中的資訊將檢視者重新導向至其他頁面,或將全部請求從一個路徑重新導向至另一個路徑。
  • 請求授權:您可以透過檢查授權標頭或其他請求中繼資料驗證授權權杖,例如 JSON Web 權杖 (JWT)。

問:什麼是 CloudFront KeyValueStore?

CloudFront KeyValueStore 是全球性、低延遲、完全受管的鍵值資料存放區。KeyValueStore 可以從 CloudFront Functions 中擷取鍵值資料,透過允許獨立的資料更新讓函數更加可自訂。鍵值資料可在所有 CloudFront 邊緣節點中存取,並且提供高效率的記憶體內鍵值存放區,可從 CloudFront Functions 內快速讀取。

問:CloudFront KeyValueStore 的使用案例是什麼?

CloudFront KeyValueStore 非常適合在邊緣節點的頻繁讀取以及不頻繁更新,例如:

  • 維護 URL 重寫和重新導向:依據地理位置將使用者重新導向至特定國家/地區網站。在 KeyValueStore 中儲存和更新這些以地理位置為基礎的 URL 可簡化 URL 的管理。
  • A/B 測試和功能標誌:透過將流量百分比指派給您的網站版本來執行實驗。您可以更新實驗權重,而無需更新函數程式碼或 CloudFront 分佈。
  • 存取授權:透過建立和驗證使用者產生的字符 (例如 HMAC 字符或 JSON Web 字符 (JWT)) 來允許或拒絕請求,從而對透過 CloudFront 交付的內容實作存取控制和授權。 

問:CloudFront Function 是否正在取代 Lambda@Edge?

否 – CloudFront Function 是將 Lambda@Edge 發揚光大,而非取代。Lambda@Edge 與 CloudFront Function 結合可讓您挑選正確的任務工具。在 CloudFront 分發的同個快取行為中,您可以選擇在不同的事件觸發器上同時使用 CloudFront Function 和 Lambda@Edge。作為範例,您可以使用 Lambda@Edge 動態操作串流資訊清單檔案,以注入自訂權杖保護即時串流。有使用者對資訊清單的區段提出請求時,您可以使用 CloudFront Function 驗證這些權杖。

問:應該使用 CloudFront Function 還是 Lambda@Edge?

CloudFront Function 與 Lambda@Edge 的結合讓您有兩種強大且靈活的選項用來執行回應 CloudFront 事件的程式碼。兩者皆提供安全的方式來執行回應 CloudFront 事件的程式碼,無需管理基礎設施。CloudFront Function 專門設計用於輕量級、大規模和延遲敏感請求/回應轉換和操作。Lambda@Edge 使用支援一系列運算需求和自訂的一般用途執行時間。您應該將 Lambda@Edge 用於運算密集型操作。這可能是需要較長時間才能完成的運算 (數毫秒到數秒),依賴外部第三方程式庫,需要與其他 AWS 服務 (例如,S3、DynamoDB) 整合,或需要網路呼叫來處理資料。一些熱門進階 Lambda@Edge 使用案例包括 HLS 串流資訊清單操作、與第三方授權和機器人偵測服務整合、邊緣單頁應用程式 (SPA) 的伺服器端轉譯 (SSR) 等。請參閱 Lambda@Edge 使用案例頁面了解更多詳細資訊。

問:AWS 如何確保 CloudFront Function 安全?

CloudFront Function 提供您預期的效能、擴展和成本有效性,但隨附在 Functions 程式碼之間提供嚴格隔離邊界的唯一安全模型。當您在共享、多租用戶運算環境中執行自訂程式碼時,維持高度安全的執行環境非常重要。惡意人士可能會嘗試利用執行時間、程式庫或 CPU 中的漏洞外洩來自伺服器或來自其他客戶之函數的敏感資料。函數程式碼之間沒有嚴格的隔離邊界,這些漏洞利用就會成為可能。透過 Firecracker 型 VM 隔離,AWS Lambda 和 Lambda@Edge 皆已實現了這一安全隔離。使用 CloudFront Function,我們已經開發了程序型隔離,針對 Spectre 和 Meltdown 等旁路攻擊、時間型攻擊或其他程式碼漏洞提供相同的安全門檻。CloudFront Function 無法存取或修改屬於其他客戶的資料。我們透過在專用 CPU 上的專用程序執行函數來完成。CloudFront Function 在一次只服務一位客戶的程序工作者上執行,每次執行前會清理 (排清) 特定於客戶的資料。

CloudFront Function 不會使用 V8 作為 JavaScript 引擎。Functions 的安全模型不同,對比一些其他廠商提供的 V8 隔離型模型,Functions 的安全模型更安全。

問:如何知道 CloudFront Function 會成功執行?

您可以使用內建測試功能測試任何函數。測試函數將針對 CloudFront 分發執行程式碼,以驗證函數是否傳回了預期的結果。除了驗證程式碼執行以外,還會提供運算使用率指標。運算使用率指標為您提供您的函數接近執行時間限制的百分比。例如,30 的運算使用率表示您的函數使用了總允許執行時間的 30%。可以使用視覺編輯器建立測試物件,讓您輕鬆為每個物件新增查詢字串、標頭、URL 和 HTTP 方法,或者您可以使用請求或回應的 JSON 表示建立測試物件。測試執行完成後,可以使用相同視覺編輯器樣式,或檢視 JSON 回應,查看結果和運算使用率指標。如果函數成功執行,運算使用率沒有接近 100,則關聯至 CloudFront 分發時,函數將工作。

問:可以如何監控 CloudFront Function?

CloudFront Function 輸出指標和執行日誌,以監控函數的用量和效能。系統會為函數的每次叫用產生指標,您可以在 CloudFront 或 CloudWatch 主控台個別查看每個函數的指標。指標包括叫用次數、運算利用率、驗證錯誤和執行錯誤。如果函數導致驗證錯誤或執行錯誤,則錯誤訊息也會出現在 CloudFront 存取日誌中,讓您更好地查看函數如何影響您的 CloudFront 流量。除了指標外,您還可以透過在函數程式碼中納入 console.log() 陳述式來產生執行日誌。任何日誌陳述式都會產生傳送至 CloudWatch 的 CloudWatch 日誌項目。日誌和指標納入了 CloudFront Function 價格。 

Lambda@Edge

問:什麼是 Lambda@Edge?

Lambda@EdgeAWS Lambda 的延伸,允許您在全球節點執行程式碼,無需佈建或管理伺服器。Lambda@Edge 為複雜函數提供強大且靈活的無伺服器運算,並提供更接近檢視者的完整應用程式邏輯。Lambda@Edge 函數在 Node.js 或 Python 環境中執行。您可以發佈函數至單一 AWS 區域,當您將函數與 CloudFront 分發關聯時,Lambda@Edge 會自動在全球範圍複寫您的程式碼。Lambda@Edge 會自動擴展,從每天幾個請求到每秒數千個請求。

問:如何使用 Lambda@Edge 自訂內容?

針對 CloudFront 中的特定快取行為關聯函數,從而執行 Lambda@Edge。您可以在處理 CloudFront 請求或回應期間指定函數應執行的任何時間點 (例如,檢視者請求著陸時、轉寄請求或從來源收回請求時,或回應最終檢視者之前)。您使用 Lambda 主控台的 Node.js 或 Python、API,或使用 Serverless Application Model (SAM) 等架構撰寫程式碼。測試函數完成後,您可以將其與選取的 CloudFront 快取行為和事件觸發器關聯。儲存之後,下一次對 CloudFront 分發發出請求時,該函數會傳播到 CloudFront 邊緣,並視需要進行擴展和執行。如要進一步了解,請參閱文件

問︰使用 Amazon CloudFront 可觸發哪些 Lambda@Edge 事件?

您的 Lambda@Edge 函數會自動觸發以回應下列 Amazon CloudFront 事件:

  • 檢視者請求:當網際網路上的最終使用者或裝置發出 HTTP(S) 請求給 CloudFront,且請求抵達最靠近該使用者的節點時,會發生此事件。
  • 檢視者回應:當節點上的 CloudFront 伺服器準備好回應發出請求的最終使用者或裝置時,會發生此事件。
  • 原始伺服器請求:當 CloudFront 邊緣伺服器的快取中尚未有請求的物件,且檢視者請求已準備好傳送到後端原始 Web 伺服器 (例如 Amazon EC2、Application Load Balancer 或 Amazon S3) 時,會發生此事件。
  • 原始伺服器回應:當邊緣上的 CloudFront 伺服器從後端原始 Web 伺服器收到回應時,會發生此事件。

持續部署

問:什麼是 CloudFront 上的持續部署?

在 CloudFront 上持續部署,可在將變更部署至所有檢視器之前,使用部分即時流量測試和驗證組態變更。

使用 CloudFront 持續部署,可為您提供高水準的部署安全性。您現在可以部署兩個獨立但相同的環境 (藍色和綠色),並能夠簡易整合至持續整合和交付 (CI/CD) 管道中,且能夠逐步推出版本,而無需變更任何網域名稱系統 (DNS)。其透過將檢視器工作階段繫結至相同環境,確保您的檢視器透過工作階段黏性獲得一致的體驗。此外,您可以透過監控標準和即時日誌來比較變更的效能,並在變更對服務產生負面影響時快速恢復至先前的組態。 

問:如何在 CloudFront 上設定持續部署?

您可以透過 CloudFront 主控台、SDK、命令列介面 (CLI) 或 CloudFormation 範本將暫存分發與主要分發建立關聯,從而設定持續部署。然後,您可以定義規則來分割流量,方法是設定客戶端標頭,或撥出一定百分比的流量,以便使用暫存分發進行測試。設定完成後,您可以使用所需的變更來更新暫存組態。CloudFront 將管理分割給使用者的流量,並提供相關分析,以協助您決定要繼續部署還是復原。驗證了使用暫存分發進行的測試後,您就能合併對主分發的變更。

請參閱此文件進一步了解此功能。

問:如何測量持續部署的結果?

持續部署允許透過真實的 Web 流量進行真實使用者監控。您可以使用任何現有可用的監控方法 (CloudFront 主控台、CloudFront API、CLI 或 CloudWatch),分別測量主要和暫存分發的操作指標。您可以測量和比較兩個分發之間的輸送量、延遲和可用性指標,從而測量特定應用程式的成功標準。

問:可否使用現有的分發?

可以,您可以使用任何現有的分發作為基準建立暫存分發,並引入和測試變更。

問:持續部署如何與 CloudFront Functions 和 Lambda@Edge 搭配使用?

透過持續部署,您可以將不同函數與主要和暫存分發建立關聯。您也可以對兩個分發使用相同的函數。如果您更新兩個分發都使用的函數,則兩者都會收到更新。

問:如何在 AWS CloudFormation 中使用持續部署分發?

CloudFormation 堆疊中的每個資源都會對應到特定的 AWS 資源。暫存分發將具有自己的資源 ID,並且像任何其他 AWS 資源一樣運作。您可以使用 CloudFormation 建立/更新該資源。

問:在 CloudFront 上的持續部署如何支援工作階段黏性?

使用權重型組態將流量路由至暫存分發時,您也能啟用工作階段黏性,這有助於確保 CloudFront 將來自相同檢視器的請求視為單一工作階段。啟用工作階段黏性時,CloudFront 會設定 Cookie,以便單一工作階段中來自相同檢視器的所有請求都由一個分發 (主要或暫存) 提供服務。

問:需要多少費用?

所有 CloudFront 邊緣節點均提供持續部署功能,無需額外費用。

IPv6

問:問:什麼是 IPv6?

每個與網際網路連接的伺服器和裝置都必須有數字網際網路協定 (IP) 地址。由於網際網路和使用人數的暴增,IP 地址的需求也隨之增加。IPv6 是新的網際網路協定版本,它使用的地址空間比之前的 IPv4 更大。IPv4 的每個 IP 地址長度為 32 位元,可允許 43 億個唯一地址。IPv4 地址的範例為 192.0.2.1。相較之下,IPv6 地址為 128 位元,可允許約三百四十兆個唯一 IP 地址。IPv6 地址的範例為:2001:0db8:85a3:0:0:8a2e:0370:7334

問:問:IPv6 可以用來做什麼?

針對 Amazon CloudFront 使用 IPv6 支援,應用程式不需要任何 IPv6 到 IPv4 轉譯軟體或系統即可連接到 Amazon CloudFront 節點。您可以符合政府制訂的 IPv6 採用要求 – 包含美國聯邦政府 – 並受惠於 IPv6 擴充性、簡易的網路管理,以及額外的內建安全支援。

問:使用 IPv6 時,Amazon CloudFront 的效能是否會有變化?

否,使用 IPv4 或 IPv6 搭配 Amazon CloudFront 時會是完全一樣的效能。

問:有哪些 Amazon CloudFront 功能無法與 IPv6 搭配運作?

所有現有的 Amazon CloudFront 功能都能持續在 IPv6 使用,但為分發開啟 IPv6 之前,可能必須先對內部 IPv6 地址處理進行兩項變更。

  1. 如果您已開啟 Amazon CloudFront 存取日誌功能,會在 "c-ip" 欄位看到檢視者的 IPv6 地址,且可能需要確認日誌處理系統可持續在 IPv6 正常運作。
  2. 當您為 Amazon CloudFront 分發啟用 IPv6 時,會在傳送到原始系統的 ‘X-Forwarded-For’ 標頭取得 IPv6 地址。如果您的原始系統只能處理 IPv4 地址,則可能需要確認原始系統可持續在 IPv6 正常運作。

此外,如果您使用可信任簽署者的 IP 白名單,則應在可信任簽署者 URL 搭配 IP 白名單使用僅 IPv4 分發,以及在所有其他內容使用 IPv4/IPv6 分發。簽署透過 IPv4 地址傳抵的請求時,發生簽署之後僅能透過不在白名單上的不同 IPv6 地址傳抵內容請求,使用此模型可避免此問題的發生。

若要進一步了解 Amazon CloudFront 的 IPv6 支援,請參閱 Amazon CloudFront 開發人員指南中的 "IPv6 support on Amazon CloudFront"。

問:這是否表示如果我想要使用 IPv6 就不能將可信任簽署者 URL 與 IP 白名單搭配使用?

否,如果您想要使用 IPv6 及可信任簽署者 URL 搭配 IP 白名單,則應使用兩個個別的分發。您應建立可信任簽署者 URL 搭配 IP 白名單專用的分發,然後停用該分發的 IPv6。接著,為所有其他內容使用另一個分發,該分發可同時使用 IPv4 和 IPv6。

問:如果啟用 IPv6,存取日誌中是否會出現 IPv6 地址?

是,如果啟用 Amazon CloudFront 存取日誌功能,存取日誌的 "c-ip" 欄位現在會顯示檢視者的 IPv6 地址。為分發開啟 IPv6 時,必須確認您的日誌處理系統可持續與 IPv6 地址搭配運作。如果有 IPv6 流量影響工具或軟體處理存取日誌 IPv6 地址的任何相關問題,請聯絡開發人員支援。如需詳細資訊,請參閱 Amazon CloudFront 存取日誌文件。

問:是否可停用所有新分發的 IPv6?

是,無論是全新或現有的分發,您都可以使用 Amazon CloudFront 主控台或 API 啟用/停用每個分發的 IPv6。

問:在哪些情況下最好停用 IPv6?

與客戶討論之後,唯一的常見案例就是內部 IP 地址處理。啟用 Amazon CloudFront 分發的 IPv6 之後,除了會在您的詳細存取日誌取得 IPv6 地址,還會在傳送到原始系統的 ‘X-Forwarded-For’ 標頭取得 IPv6 地址。如果您的原始系統只能處理 IPv4 地址,在開啟分發的 IPv6 之前,可能需要確認原始系統可持續與 IPv6 搭配運作。

問:啟用分發的 IPv6 之後,DNS 查詢沒有傳回任何 IPv6 地址。為什麼會這樣?

Amazon CloudFront 在全球有各種不同的連線能力,但是仍然有些網路沒有通用的 IPv6 連線。很明顯地,IPv6 是網際網路未來長遠的趨勢,但在可預見的未來,網際網路上的每個端點都會有 IPv4 連線。當我們發現網際網路某些部分的 IPv4 連線比 IPv6 更好,我們會優先使用前者。

問:如果我使用 Route 53 處理 DNS 需求,並建立指向 Amazon CloudFront 分發的別名記錄,是否需要更新別名記錄以啟用 IPv6?

是,您可以建立指向 Amazon CloudFront 分發的 Route 53 別名記錄,以分別使用 "A" 和 "AAAA" 記錄類型支援 IPv4 和 IPv6。如果您只想要啟用 IPv4,則只需一個類型 "A" 的別名記錄。如需別名資源紀錄集的詳細資訊,請參閱 Amazon Route 53 開發人員指南

計費

問:Amazon CloudFront 的 AWS 免費方案涵蓋哪些使用類型?

從 2021 年 12 月 1 日開始,所有 AWS 客戶每月可以免費接收 1 TB 的資料傳出、10,000,000 個 HTTP 和 HTTPS 請求,以及 2,000,000 次 CloudFront 函數叫用。所有其他使用類型 (例如失效、代理請求、Lambda@edge、Origin shield、資料傳輸到 Origin 等) 不包含在免費方案內。

問:如果我們註冊合併帳單,是否每個帳戶都可使用 AWS 免費方案?

否,使用合併帳單跨多個帳戶合併付款的客戶,每個組織只能存取一個免費方案。

問:如果我的用量跨越多個區域,並且超出免費方案,會發生什麼情況?

1 TB 資料傳輸和 1,000 萬個 Get 請求是所有節點每月免費方案的上限。如果您的用量超過每月免費方案的限制,只需支付每個區域的標準隨需計費 AWS 服務費率。如需完整的定價詳細資訊,請參閱 AWS CloudFront 定價頁面

問:如何知道已經使用多少用量以及是否已超過免費用量方案的限制?

請登入您的帳戶並前往帳單和成本管理儀表板,即可依區域查看目前和過去的使用活動。您可以在該處使用 AWS Budgets 來管理成本和用量、透過 Cost Explorer 以視覺化的方式查看成本驅動因素和用量趨勢,以及利用成本和用量報告深入了解各項成本。 要進一步了解如何控制您的 AWS 成本,請查看「控制您的 AWS 成本」10 分鐘教學。

問:免費方案適用於訂閱 CloudFront Security Savings 搭售的客戶嗎?

訂閱 CloudFront Security Savings 搭售的客戶也將受惠於免費方案。如果您覺得需要根據免費方案降低對 CloudFront Security Savings 搭售的承諾,請聯絡客戶服務,我們會評估您的變更請求。我們將在未來幾天提供這方面的更多詳細資訊。敬請關注。 

其他問題請參閱 https://thinkwithwp.com/free/free-tier-faqs/

問:Amazon CloudFront 如何收費?

Amazon CloudFront 會依據下列五個部分的服務實際用量收費:資料傳出、HTTP/HTTPS 請求、失效請求、即時日誌請求和與 CloudFront 分佈關聯的專用 IP 自訂 SSL 憑證。

有了 AWS 免費用量方案,您可以免費開始使用 Amazon CloudFront;費率會隨著使用量的增加而降低。所有 CloudFront 客戶可免費接收 1 TB 資料傳出以及 10,000,000 個針對 Amazon CloudFront 的 HTTP 和 HTTPS 請求,即使已經超出這些限制。

  • 資料傳出至網際網路
    您需按傳出 Amazon CloudFront 節點的資料量 (以 GB 為計) 付費。您可以到這裡查看 Amazon CloudFront 資料傳出到網際網路的費用。請注意,會根據特定地理區域個別計算資料傳輸總用量,然後依每個區域的定價方案計算費用。如果您使用其他 AWS 服務做為檔案的來源,則使用這些服務要另外計費,包括儲存和運算小時數。如果您使用 2014 年 12 月 1 日生效的 AWS 來源 (例如,Amazon S3、Amazon EC2 等),我們將不會收取傳出 Amazon CloudFront 的 AWS 資料費用。這適用於從所有 AWS 區域到所有全球 CloudFront 節點的資料傳輸。
  • 資料傳出至原始伺服器
    您需按將資料從 Amazon CloudFront 節點傳出至原始伺服器 (包括 AWS 原始伺服器和其他原始伺服器) 的資料量 (以 GB 計) 付費。您可以到這裡查看 Amazon CloudFront 資料傳輸到原始伺服器的費用。
  • HTTP/HTTPS 請求
    您需按為了您的內容而傳送至 Amazon CloudFront 的 HTTP/HTTPS 請求付費。您可以到這裡查看 HTTP/HTTPS 請求的費用。
  • 失效請求
    您需按失效請求中的每個路徑付費。失效要求上所列的路徑,代表您希望從 CloudFront 快取失效的物件 URL (或者,如果路徑包含萬用字元,則會有多個 URL)。您每月可從 Amazon CloudFront 最多請求 1,000 個路徑,無須支付額外費用。超過 1,000 個路徑後,就需按失效請求中所列的每個路徑付費。您可以在這裡查看失效請求的費用。
  • 即時日誌請求
    即時日誌依據產生的日誌行數計費;CloudFront 發佈至您的日誌目的地的每 1 百萬行日誌需支付 0.01 美元。
  • 專用 IP 自訂 SSL
    與使用專用 IP 版自訂 SSL 憑證支援的一或多個 CloudFront 分發關聯的每個自訂 SSL 憑證,每月需支付 600 USD 的費用。此每月費用按小時比例收取。例如,如果您在六月將您的自訂 SSL 憑證與至少一個 CloudFront 分發相關聯,時間僅 24 小時 (即 1 天),那麼在六月使用自訂 SSL 憑證功能的費用總額為 (1 天/30 天) * 600 USD = 20 USD。要使用專用 IP 自訂 SSL 憑證支援,請上傳 SSL 憑證並使用 AWS 管理主控台,將其與您的 CloudFront 分發建立關聯。如果您需要將兩個以上的自訂 SSL 憑證與 CloudFront 分發建立關聯,請將使用案例的相關詳細資訊及要使用的自訂 SSL 憑證數量加入 CloudFront 上限提高申請表

資料傳輸的用量方案針對每個地理區域單獨計算。除非另有說明,否則上述價格不包括適用稅費、費用或類似的政府規費 (如果有的話)。

問:價格含稅嗎?

除非另有說明,否則我們的價格不包括適用的稅金和稅收 (包括加值稅和適用的營業稅)。帳單地址在日本的客戶若使用 AWS 服務,則需負擔日本消費稅。進一步了解

問:即時日誌的費用是多少?
如果您的分發每秒可處理 1,000 個請求,日誌大小為 1KB,並在美國東部 (俄亥俄) 建立具有 2 個分區的 Kinesis Data Stream:

Kinesis Data Stream 每月成本:在這裡使用 Kinesis 計算器,計算得出每月 47.74 USD。

CloudFront 即時日誌每月成本:每月請求數 x 即時日誌成本 = 1,000 * (60 秒 * 60 分鐘 * 24 小時 * 30 天) x (0.01 USD/1,000,000) = 25.92 USD/月

問:304 回應如何計費?

304 是條件式 GET 請求的回應,在 HTTP/HTTPS 請求和資料傳出網際網路時會產生費用。304 回應並不包含訊息本身,但由於 HTTP 標頭會耗用部分頻寬,因此您需按用量支付標準 CloudFront 資料傳輸費用。資料傳輸量取決於與物件關聯的標頭。

問:我可以選擇只從費用較低的 Amazon CloudFront 區域提供內容服務嗎?

可以,「價格分級」讓您能夠選擇以較低的價格從 Amazon CloudFront 交付內容。根據預設,Amazon CloudFront 會從其全球節點網路交付內容,將最終使用者的延遲降至最低。但是,因為我們在成本較高的地區相對收費也較高,這表示您在某些地區需要支付較多的費用,才能以低延遲將內容交付給最終使用者。價格分級讓您將 Amazon CloudFront 的高價節點排除在 Amazon CloudFront 分發範圍之外,藉此節省交付費用。在這些情況下,Amazon CloudFront 將從您選定價格分級的地區內的節點交付內容,並根據交付內容的實際地區的資料傳輸和請求定價收費。

如果效能對您而言最為重要,則無須進行任何操作;您的內容將透過我們的整個節點網路交付。但是,如果您想要使用其他價格分級的服務,則可透過 AWS 管理主控台或 Amazon CloudFront API 配置您的分配。如果您選擇的價格分級並未包括所有地區,則部分瀏覽者 (特別是所在地理位置不屬於您所選價格分級的瀏覽者) 發生的延遲可能高於從所有 Amazon CloudFront 節點提供內容發生的延遲。

請注意,Amazon CloudFront 偶爾還是會從不包括在您所選價格分級中的地區節點處理您的內容請求。發生這種情況時,我們只按照您所選價格分級中最低費率的地區向您收費。

您可以在這裡查看每個價格分級所包含的地區清單。

CloudFront 安全節省服務包

問:什麼是 CloudFront 安全節省服務包?

CloudFront 安全節省服務包是一種靈活的自助定價計劃,可協助您只需承諾在一年期內每月用量保持一致的金額 (例如,100 USD/月),您的 CloudFront 帳單最多可節省 30%。  作為一項額外的好處,AWS WAF (Web Application Firewall) 用量高達您已承諾計劃金額的 10%,用於保護 CloudFront 資源,無需額外付費。 例如,承諾每月 CloudFront 用量 100 USD 將涵蓋價值 142.86 USD 的 CloudFront 用量,與標準費率相比節省 30%。此外,將包含 10 USD 的 AWS WAF 用量,用於每月保護您的 CloudFront 資源,無需額外付費 (高達您 CloudFront 承諾的 10%)。  高於每月支出承諾涵蓋部分的任何用量將收取標準 CloudFront 和 AWS WAF 費用。  隨著用量的增加,您可以購買額外的節省服務包,以取得增量用量折扣。 

問:CloudFront 安全節省服務包涵蓋哪些用量類型?

透過購買 CloudFront 安全節省服務包,您將節省 30%,這些將體現在您每月帳單的 CloudFront 服務部分,將抵銷任何 CloudFront 記帳用量類型,包括資料傳出、資料傳輸至來源、HTTP/S 請求費、現場加密請求、Origin Shield、失效、專用 IP 自訂 SSL,以及 Lambda@Edge 費用。  您還將收到額外的好處,協助涵蓋與您 CloudFront 散佈相關的 AWS WAF 用量。 

問:我如何開始使用 CloudFront 安全節省服務包?
您可以透過造訪 CloudFront 主控台,取得根據您歷史 CloudFront 和 AWS WAF 用量的推薦承諾金額,或透過輸入自己的預估每月用量,開始使用 CloudFront 安全節省服務包。您可以對比 CloudFront 安全節省服務包每月成本和隨需成本,然後查看預估節省,來協助決定適合您需求的計劃。  註冊節省服務包後,將會向您收取每月承諾金額,可查看抵銷 CloudFront 和 WAF 用量費用的積分。  高於每月支出承諾涵蓋部分的任何用量將收取標準服務費。 

問:CloudFront 安全節省服務包在 1 年期後到期時會怎麼樣?

您的 CloudFront 安全節省服務包期限到期後,將收取適用於 CloudFront 和 AWS WAF 用量的標準服務費。   每月節省服務包承諾將不再計費,且不再享受節省服務包好處。  在服務包期限到期前的任何時間,您都可選擇加入,以自動將 CloudFront 安全節省服務包續期 1 年。

問: CloudFront 安全節省服務包如何與 AWS Organizations/合併帳單搭配運作?

CloudFront 安全節省服務包可以在任何 AWS Organization/合併帳單系列的帳戶中購買。  CloudFront 安全節省服務包好處將以帳單積分形式提供。節省服務包提供的好處預設適用於 AWS Organization/合併帳單系列內所有帳戶的用量 (積分共享已開啟),且取決於訂閱帳戶加入或離開組織的時間。  查看 AWS 積分進一步了解 AWS 積分如何套用於單一和多個帳戶。

問:我可以同時啟用多個 CloudFront 安全節省服務包嗎?

是,隨著用量增加,您可以購買額外的 CloudFront 安全節省服務包,以取得增量用量折扣。   計算 AWS 帳單時,所有啟用的 CloudFront 安全節省服務包都將計入。

問:CloudFront 安全節省服務包如何在我的帳單上顯示?

您的每月承諾費用將出現在帳單單獨的 CloudFront 安全服務包區段下。  CloudFront 安全節省服務包涵蓋的用量將在帳單的 CloudFront 和 WAF 部分下以積分形式顯示,以抵銷標準用量收費。

問:如果我的用量超過 CloudFront 安全節省服務包每月承諾,會通知我嗎?

是,AWS Budgets 可讓您設定成本和用量閾值,並在實際或預測收費超過閾值時,以電子郵件或 Amazon SNS 主題的方式通知您。  您可以建立針對 CloudFront 服務篩選的自訂 AWS Budget,並將預設閾值金額設定為 CloudFront 安全節省服務包涵蓋的 CloudFront 隨需用量,以便在超過該閾值時接收通知。   如需有關預算的詳細資訊,請參閱「AWS 帳單和成本隔離使用者指南」中的使用 AWS Budgets 管理成本建立預算

問:CloudFront 安全節省服務包涵蓋我 WAF 帳單的哪部分?

作為 CloudFront 安全節省服務包一項額外的好處,AWS WAF 用量高達您已承諾計劃金額的 10%,用於保護 CloudFront 資源,無需額外付費。超出 CloudFront 安全節省服務包涵蓋部分的任何用量將收取標準 CloudFront 和 AWS WAF 費用。  透過 AWS Marketplace 訂閱的受管 WAF 規則不在 CloudFront 安全節省服務包涵蓋之列。

問:如果我已經有 CloudFront 自訂定價協議會怎麼樣,我是否還能訂閱 CloudFront 安全節省服務包?

您僅可訂閱其中一種。  如果對您的自訂定價協議有任何問題,請聯絡您的 AWS 客戶經理。

問:我是否可透過 API 訂閱 CloudFront 安全節省服務包?

您僅可透過 CloudFront 主控台訂閱 CloudFront 安全節省服務包。  我們將評估透過 API 取得該服務包,作為未來的增強功能。

了解如何開始免費使用 Amazon CloudFront

瀏覽入門頁面
準備好開始建置了嗎?
開始在 AWS Console 中使用 Amazon CloudFront 進行建置
還有其他問題嗎?
聯絡我們