

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

# Amazon CloudFront 介紹
<a name="Introduction"></a>

Amazon CloudFront 是一種 Web 服務，可將 .html、.css、.js 和影像檔案等靜態與動態內容加速發佈給使用者。CloudFront 透過透過稱為節點的資料中心全球網路交付您的內容。當使用者請求您使用 CloudFront 提供的內容時，請求會被路由到可提供最低延遲 (時間延遲) 的節點，以便能以最佳的效能發佈內容。
+ 如果最低延遲的節點中有該內容，CloudFront 就會立即交付該內容。
+ 如果該節點中沒有此內容，CloudFront 就會從您已定義的原始伺服器中擷取，這些伺服器可能是您識別為內容最終版本來源的 Amazon S3 儲存貯體、MediaPackage 頻道或 HTTP 伺服器 (例如 Web 伺服器)。

例如，假設您是從傳統的 Web 伺服器提供影像，而非從 CloudFront。例如，您可以使用 URL `https://example.com/sunsetphoto.png` 來提供影像 sunsetphoto.png。

您的使用者可輕鬆瀏覽至此 URL 並看到影像。但是他們可能不知道他們的請求是從一個網路路由到另一個網路，透過組成網際網路的複雜互連網路集合，直到找到映像為止。

CloudFront 透過 AWS 骨幹網路將每個使用者請求路由到能以最佳方式提供內容的節點，以加速發佈內容。一般而言，這是能最快將內容交付給瀏覽者的 CloudFront 節點伺服器。使用 AWS 網路可大幅減少使用者請求必須通過的網路數量，進而提升效能。使用者可以獲得更低的延遲 - 載入檔案的第一個位元所需的時間 - 以及更高的資料傳輸速率。

您也能獲得更高的可靠性和可用性，因為檔案 (也稱為*物件*) 的副本現在保留 (或快取) 在世界各地的多個節點。

**Topics**
+ [如何設定 CloudFront 交付內容](#HowCloudFrontWorksOverview)
+ [選擇標準分佈或多租用戶分佈](#choose-standard-or-multi-tenant)
+ [定價](#pricing)
+ [使用 CloudFront 的方式](IntroductionUseCases.md)
+ [CloudFront 如何交付內容](HowCloudFrontWorks.md)
+ [CloudFront 邊緣伺服器的位置和 IP 位址範圍](LocationsOfEdgeServers.md)
+ [搭配 AWS SDK 使用 CloudFront](sdk-general-information-section.md)
+ [CloudFront 技術資源](#resources-cloudfront)

## 如何設定 CloudFront 交付內容
<a name="HowCloudFrontWorksOverview"></a>

您建立 CloudFront 發佈告知 CloudFront 交付的內容出自何處，以及如何追蹤及管理內容交付的詳細資訊。然後 CloudFront 使用接近瀏覽者的電腦 (節點伺服器)，在某人想要查看或使用內容時，快速交付該內容。

![\[CloudFront 的運作方式\]](http://docs.aws.amazon.com/zh_tw/AmazonCloudFront/latest/DeveloperGuide/images/how-you-configure-cf.png)
<a name="HowCloudFrontWorksConfiguration"></a>

**如何設定 CloudFront 交付內容**

1. 您可以指定「原始伺服器」**，像是 Amazon S3 儲存貯體或您自己的 HTTP 伺服器，CloudFront 會取得其中的檔案，再從 CloudFront 節點發佈到世界各地。

   原始伺服器儲存物件的原始、最終版本。如果您是透過 HTTP 提供內容，則您的原始伺服器會是 Amazon S3 儲存貯體或 HTTP 伺服器，例如 Web 伺服器。您的 HTTP 伺服器可以在 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體或您管理的伺服器上執行，這些伺服器也稱為「自訂的原始伺服器」**。

1. 您將檔案上傳到原始伺服器。您的檔案 (也稱為*物件*) 通常包含網頁、影像和媒體檔案，但也可以是能透過 HTTP 提供的任何內容。

   如果您使用 Amazon S3 儲存貯體做為原始伺服器，可以將儲存貯體中的物件變成可公開讀取，讓所有知道物件 CloudFront URL 的人都能存取物件。您還可以選擇保持物件的隱私以及控制誰能對其作存取。請參閱[使用已簽署 URL 和已簽署 Cookie 提供私有內容](PrivateContent.md)。

1. 當使用者透過您的網站或應用程式請求檔案時，您建立的 CloudFront「發佈」**會告訴 CloudFront 要從哪些原始伺服器取得您的檔案。同時，您可以指定詳細資訊，例如是否希望 CloudFront 記錄所有請求，以及是否希望一建立發佈即啟用。

1. CloudFront 會將網域名稱指派給新發佈，此發佈可在 CloudFront 主控台中查看，或在對程式設計請求 (例如 API 請求) 的回應中傳回。如果想要，您可以改為新增要使用的替代網域名稱。

1. CloudFront 會將您的發佈組態 (不是內容) 傳送至其所有「節點」**或「連接點」**(POP)，這些是分散在各地之資料中心的伺服器集合，CloudFront 會在這裡快取檔案的副本。

開發網站或應用程式時，您可以使用 CloudFront 提供給 URL 的網域名稱。例如，如果 CloudFront 傳回 `d111111abcdef8.cloudfront.net` 做為發佈的網域名稱，則在 Amazon S3 儲存貯體 (或 HTTP 伺服器根目錄) 中的 logo.jpg URL 就會是 `https://d111111abcdef8.cloudfront.net/logo.jpg`。

或者，您可以設定 CloudFront 使用您自己的發佈網域名稱。在這種情況下，URL 可能是 `https://www.example.com/logo.jpg`。

或者，您可以設定原始伺服器在檔案中新增標頭，指出您希望檔案在 CloudFront 節點的快取中停留多長時間。在預設情況下，每個檔案在到期前的 24 小時內保持在節點。最短到期時間是 0 秒；沒有最大到期時間。如需詳細資訊，請參閱[管理內容保持在快取中達多久時間 (過期)](Expiration.md)。

## 選擇標準分佈或多租用戶分佈
<a name="choose-standard-or-multi-tenant"></a>

CloudFront 為單一網站或應用程式以及多租用戶情境提供分佈選項。

**標準分佈**  
專為每個網站或應用程式的獨特組態而設計。請在下列使用案例中選擇此選項：  
+ 您需要單獨的 CloudFront 分佈
+ 每個網站或應用程式都需要自己的自訂設定
大多數人會從標準分佈開始使用。

**多租用戶分佈和分佈租用戶 (CloudFront SaaS Manager)**  
專為 SaaS 供應商和多租用戶情境而設計。請在下列使用案例中選擇此選項：  
+ 您正在建置一個可服務多個客戶網站或應用程式的 SaaS 平台
+ 您需要有效率地管理多個類似的分佈
+ 您需要集中控制共用的組態
如需詳細資訊，請參閱[了解多租用戶分佈的運作方式](distribution-config-options.md)。

## 定價
<a name="pricing"></a>

CloudFront 會收取從其邊緣節點傳出的資料傳輸費用，以及 HTTP 或 HTTPS 請求的費用。定價會因使用類型、地理區域和功能選擇而有所不同。

使用 Amazon Simple Storage Service (Amazon S3)、Elastic Load Balancing 或 Amazon API Gateway 等 AWS 原始伺服器時，一律可免費將資料傳輸至 CloudFront。只有在使用 AWS 原始伺服器時，才會向您收取從 CloudFront 傳出資料傳輸到檢視器的費用。

如需詳細資訊，請參閱 [CloudFront 定價](https://aws.amazon.com/cloudfront/pricing/)和 Billing and Savings Bundle [常見問題](https://aws.amazon.com/cloudfront/faqs/)。

## CloudFront 技術資源
<a name="resources-cloudfront"></a>

使用下列資源取得有關 CloudFront 技術問題的解答：
+ [AWS re:Post](https://repost.aws/tags/TA8pHF0m5aQdawzT2gwPcVYQ/amazon-cloudfront) - 社群式問答網站，讓開發人員討論與 CloudFront 相關的技術問題。
+ [支援 中心](https://console.aws.amazon.com/support/home) – 此網站包含您最近支援案例以及 AWS Trusted Advisor 和 運作狀態檢查結果的相關資訊。其中還提供論壇、技術常見問題、服務運作狀態儀表板和 支援 計劃相關資訊的連結。
+ [AWS Premium Support](https://aws.amazon.com/premiumsupport/) – 了解 AWS Premium Support，這是one-on-one的快速回應支援管道，可協助您建置和執行應用程式 AWS。
+ [AWS IQ](https://iq.aws.amazon.com/?utm=docs) – 向 AWS 經過認證的專業人員和專家尋求協助。