

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

# 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="IntroductionUseCases"></a>

使用 CloudFront 可協助您達成各種目標。本節僅摘列其中幾項，另提供詳細資訊的連結以讓您了解更多可能性。

**Topics**
+ [加速靜態網站內容交付](#IntroductionUseCasesStaticWebsite)
+ [提供隨需視訊或即時串流視訊](#IntroductionUseCasesStreaming)
+ [在整個系統處理過程中加密特定欄位](#IntroductionUseCasesFieldLevelEncryption)
+ [在邊緣進行自訂](#IntroductionUseCasesProgrammableCDN)
+ [使用 Lambda@Edge 自訂項目提供私有內容](#IntroductionUseCasesPrivateContentAtTheEdge)

## 加速靜態網站內容交付
<a name="IntroductionUseCasesStaticWebsite"></a>

CloudFront 可加速將靜態內容 (如影像、樣式表、JavaScript 等) 交付予全球各地的瀏覽者。透過使用 CloudFront，您可以利用 AWS 骨幹網路和 CloudFront 邊緣伺服器，讓您的瀏覽者在造訪您的網站時獲得快速、安全和可靠的體驗。

簡單存放及交付靜態內容的方法是使用 Amazon S3 儲存貯體。使用 S3 結合 CloudFront 有許多優點，包括可選擇使用[原始存取控制](private-content-restricting-access-to-s3.md)，輕鬆限制對您 Amazon S3 內容的存取。

如需搭配使用 Amazon S3 與 CloudFront 的詳細資訊，包括可協助您快速入門的 CloudFormation 範本，請參閱 [開始使用安全的靜態網站](getting-started-secure-static-website-cloudformation-template.md)。

## 提供隨需視訊或即時串流視訊
<a name="IntroductionUseCasesStreaming"></a>

CloudFront 為全球各地的瀏覽者提供多種媒體串流選項，包括預錄檔案和直播活動。
+ 對於隨選影片 (VOD) 串流，您可使用 CloudFront 以常見的格式，如 MPEG DASH、Apple HLS、Microsoft Smooth Streaming 和 CMAF 等，將內容串流至任何裝置。
+ 對於廣播即時串流，您可在節點快取媒體片段，以便將按正確順序傳輸各片段的資訊清單檔案的多個請求相組合，從而減輕原始伺服器的負擔。

如需如何使用 CloudFront 交付串流內容的詳細資訊，請參閱[使用 CloudFront 提供隨需視訊和即時串流視訊](on-demand-streaming-video.md)。

## 在整個系統處理過程中加密特定欄位
<a name="IntroductionUseCasesFieldLevelEncryption"></a>

設定 HTTPS 搭配 CloudFront 時，即已獲得原始伺服器的安全端對端連線。若增設欄位層級加密，您便可在整個系統處理過程中保護特定資料並實施 HTTPS 安全性，從而只有原始伺服器端的某些應用程式才能看到該資料。

若要設定欄位層級加密，請在 CloudFront 中新增公有金鑰，然後指定您想要使用該金鑰加密的一組欄位。如需詳細資訊，請參閱 [使用欄位層級加密來協助保護敏感資料](field-level-encryption.md)。

## 在邊緣進行自訂
<a name="IntroductionUseCasesProgrammableCDN"></a>

透過在節點執行無伺服器程式碼，開啟了讓您為瀏覽者自訂內容與體驗的諸多可能性，同時還可減少延遲。例如，您可在原始伺服器停機進行維護時傳回自訂錯誤訊息，以免瀏覽者看到的是一般 HTTP 錯誤訊息。或者，您可以在 CloudFront 將請求轉送到原始伺服器之前，使用函數協助授權使用者並控制對內容的存取。

使用 Lambda @Edge 搭配 CloudFront 可讓您使用多種方式來自訂 CloudFront 交付的內容。若要進一步了解 Lambda@Edge 以及如何使用 CloudFront 建立與部署函數，請參閱[使用 Lambda@Edge 在邊緣自訂](lambda-at-the-edge.md)。如欲查看可供您針對自身解決方案進行自訂的若干程式碼範例，請參閱 [Lambda@Edge 範例函數](lambda-examples.md)。

## 使用 Lambda@Edge 自訂項目提供私有內容
<a name="IntroductionUseCasesPrivateContentAtTheEdge"></a>

除了使用已簽章 URL 或已簽章 Cookie，使用 Lambda@Edge 也可協助您設定 CloudFront 分佈從您的自訂原始伺服器提供私有內容。

若要使用 CloudFront 提供私有內容，請執行以下操作：
+ 要求使用者 (瀏覽者) 使用[已簽章的 URL 或已簽章的 Cookie](PrivateContent.md) 來存取內容。
+ 限制針對您原始伺服器的存取，使該伺服器僅可透過 CloudFront 面對原始伺服器使用。您可通過下列其中之一的方式執行此操作：
  + 對於 Amazon S3 原始伺服器，您可[使用原始存取控制 (OAC)](private-content-restricting-access-to-s3.md)。
  + 對於自訂的原始伺服器，您可以執行下列操作：
    + 如果自訂原始伺服器受到 Amazon VPC 安全群組保護 AWS Firewall Manager，或者，您可以使用 [ CloudFront 受管字首清單](LocationsOfEdgeServers.md#managed-prefix-list)，僅允許從 CloudFront 面向原始伺服器的 IP 地址傳入至原始伺服器的流量。
    + 使用自訂 HTTP 標頭來將存取限制為僅供 CloudFront 的請求使用。如需更多詳細資訊，請參閱 [在自訂原始伺服器上限制存取檔案](private-content-overview.md#forward-custom-headers-restrict-access) 及 [將自訂標頭新增到原始伺服器請求](add-origin-custom-headers.md)。如需使用自訂標頭來限制 Application Load Balancer 原始伺服器的存取，請參閱 [限制對 Application Load Balancers 的存取](restrict-access-to-load-balancer.md)。
    + 如果自訂原始伺服器需要自訂的存取控制邏輯，您可以使用 Lambda@Edge 來實作該邏輯，如此部落格文章中所述：[使用 Amazon CloudFront 與 Lambda@Edge 提供私有內容](https://aws.amazon.com/blogs/networking-and-content-delivery/serving-private-content-using-amazon-cloudfront-aws-lambdaedge/)。

# CloudFront 如何交付內容
<a name="HowCloudFrontWorks"></a>

經過一些初步設定後，CloudFront 會與您的網站或應用程式合作，加速交付您的內容。本節說明 CloudFront 如何在收到瀏覽者請求後向其提供內容。

**Topics**
+ [CloudFront 如何將內容交付給您的使用者](#HowCloudFrontWorksContentDelivery)
+ [CloudFront 使用區域節點快取的方法](#CloudFrontRegionaledgecaches)

## CloudFront 如何將內容交付給您的使用者
<a name="HowCloudFrontWorksContentDelivery"></a>

在您設定 CloudFront 以交付內容之後，以下是使用者請求物件時會發生的情況：

1. 使用者存取您的網站或應用程式並傳送一或多個物件的請求，如影像檔案或 HTML 檔案。

1. DNS 將請求路由到最適合請求的 CloudFront POP (邊緣節點)，通常會為了延遲選擇距離最近的 CloudFront POP。

1. CloudFront 會檢查快取中是否有所請求的物件。如果物件在快取中，CloudFront 會將物件傳回給使用者。如果物件*不*在快取中，CloudFront 會執行下列作業：

   1. CloudFront 會比較請求與分佈中的規格，將請求轉送至原始伺服器以取得對應的物件類型，例如，轉送至 Amazon S3 儲存貯體或 HTTP 伺服器。

   1. 原始伺服器會將物件傳送回節點。

   1. 來自原始伺服器的第一個位元組一抵達，CloudFront 就會開始向使用者轉送物件。下次有人請求物件時，CloudFront 還會將物件新增到快取中。

![\[透過 CloudFront 來從使用者請求和回應至原始伺服器\]](http://docs.aws.amazon.com/zh_tw/AmazonCloudFront/latest/DeveloperGuide/images/how-cloudfront-delivers-content.png)


## CloudFront 使用區域節點快取的方法
<a name="CloudFrontRegionaledgecaches"></a>

CloudFront 連接點 (也稱為 *POP* 或*節點*) 確保能將熱門內容快速提供給瀏覽者。即使內容的熱門度不足以留在 POP，CloudFront 也有可將更多內容帶給瀏覽者的「區域節點快取」**，有助於提升該內容的效能。

區域節點快取有助於處理所有內容類型，特別是隨著時間推移漸漸不熱門的內容。範例包含使用者產生的內容，例如影片、照片或圖案；電子商務資產，例如產品照片和影片；以及可能因新聞和事件而知名度突然暴增的相關內容。

**區域快取的工作方式**  
區域節點快取是部署在全球各地接近瀏覽者的 CloudFront 位置。位於原始伺服器和 POP (直接向瀏覽者提供內容的全球節點) 之間。隨著物件變得較不熱門，個別 POP 可能會移除這些物件，為更熱門的內容騰出空間。區域節點快取擁有的快取比個別 POP 大，因此物件在最近的區域節點快取位置保留在快取中的時間會比較久。這有助於將更多內容放在距離瀏覽者更近的地方，降低 CloudFront 返回原始伺服器的需求，並提高整體的瀏覽者效能。

當瀏覽者在您的網站上或透過您的應用程式發出請求時，DNS 會將請求路由到最能滿足使用者請求的 POP。此位置通常是與延遲有關的最近 CloudFront 節點。在 POP 中，CloudFront 會檢查快取中是否有所請求的物件。如果物件在快取中，CloudFront 會將物件傳回給使用者。如果物件不在快取中，POP 通常將移至最近的區域節點快取，以擷取物件。如需 POP 何時略過區域節點快取，並直接進入原始伺服器的相關資訊，請參閱以下備註。

在區域節點快取位置中，CloudFront 會再次檢查其快取中是否有請求的物件。如果檔案在快取中，CloudFront 會將其轉送至提出請求的 POP。來自區域節點快取位置的第一個位元組一抵達，CloudFront 就會開始向使用者轉送物件。下次有人請求物件時，CloudFront 還會將物件新增到 POP 的快取中。

至於未在 POP 和區域節點快取位置中進行快取的物件，CloudFront 會比較請求和分佈規格，並將請求轉送到原始伺服器。在原始伺服器將物件傳送回區域節點快取位置後，會將其轉送到 POP，由 CloudFront 轉送給使用者。在這種情況下，CloudFront 除了將物件新增到 POP 之外，還會新增到區域節點快取位置的快取，以供瀏覽者下次請求物件時擷取。如此可確保某個區域中的所有 POP 都共用一份本機快取，不會向原始伺服器提出多個請求。CloudFront 也會與原始伺服器保持永久連線，以便儘快從原始伺服器擷取物件。

**注意**  
區域節點快取具有與 POP 相同的功能。例如，快取失效請求在到期之前從 POP 快取和區域節點快取中移除物件。下次瀏覽者請求該物件時，CloudFront 會回到原始伺服器擷取物件的最新版本。
Proxy HTTP 方法 (`PUT`、`POST`、`PATCH`、`OPTIONS` 和 `DELETE`) 直接從 POP 進入原始伺服器，而且不透過區域節點快取進行代理。
在請求時決定的動態請求不會流經區域邊緣快取，而是直接移至原始伺服器。
當原始伺服器是 Amazon S3 儲存貯體，且請求的最佳區域節點快取與 S3 儲存貯體位於相同位置 AWS 區域 時，POP 會略過區域節點快取並直接前往 S3 儲存貯體。

下列圖表說明請求和回應經 CloudFront 節點和區域節點快取的處理方式。

![\[圖表顯示透過邊緣節點和區域邊緣快取從檢視器到原始伺服器的請求/回應路徑。\]](http://docs.aws.amazon.com/zh_tw/AmazonCloudFront/latest/DeveloperGuide/images/regional-edge-caches.png)


# CloudFront 邊緣伺服器的位置和 IP 位址範圍
<a name="LocationsOfEdgeServers"></a>

如需 CloudFront 邊緣伺服器位置的清單，請參閱 [Amazon CloudFront 全球邊緣網路](https://aws.amazon.com/cloudfront/features/#Global_Edge_Network)頁面。

Amazon Web Services (AWS) 會以 JSON 格式發佈目前的 IP 位址範圍。若要檢視目前範圍，請下載 [ip-ranges.json](https://ip-ranges.amazonaws.com/ip-ranges.json)。如需詳細資訊，請參閱 *Amazon Web Services 一般參考*中的 [AWS IP 位址範圍](https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html)。

若要尋找與 CloudFront 邊緣伺服器相關聯的 IP 位址範圍，請在 ip-ranges.json 中搜尋下列字串：

```
"region": "GLOBAL",
"service": "CLOUDFRONT"
```

或者，您可以在 [https://d7uri8nf7uskq.cloudfront.net/tools/list-cloudfront-ips](https://d7uri8nf7uskq.cloudfront.net/tools/list-cloudfront-ips) 僅檢視 CloudFront IP 範圍。

## 使用 CloudFront 受管字首清單
<a name="managed-prefix-list"></a>

CloudFront 受管字首清單包含所有 CloudFront 全球面向原始伺服器的伺服器 IP 位址範圍。如果您的原始伺服器託管在 AWS 上並由 Amazon VPC [安全群組](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)保護，您可以使用 CloudFront 受管字首清單，僅允許從 CloudFront 面向原始伺服器的傳入流量傳送至原始伺服器，以防止任何非 CloudFront 流量到達原始伺服器。CloudFront 會維護受管字首清單，讓清單上所有 CloudFront 全球面向原始伺服器的伺服器 IP 位址始終維持在最新狀態。有了 CloudFront 受管字首清單，您就不必親自閱讀或維護 IP 位址範圍清單。

例如，假設您的原始伺服器是位於歐洲 (倫敦) 區域 (`eu-west-2`) 的 Amazon EC2 執行個體。如果執行個體位於 VPC 中，您可以建立安全群組規則，允許來自 CloudFront 受管字首清單的傳入 HTTPS 存取。如此可讓所有 CloudFront 全球面向原始伺服器的伺服器連至該執行個體。如果您移除了所有其他來自安全群組的傳入規則，則會阻止任何非 CloudFront 流量連至執行個體。

CloudFront 受管字首清單如下所示：
+ `com.amazonaws.global.cloudfront.origin-facing` (IPv4)
+ `com.amazonaws.global.ipv6.cloudfront.origin-facing` (IPv6)



如需詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的[使用 AWS受管字首清單](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html#use-aws-managed-prefix-list)。

**重要**  
CloudFront 受管字首清單在應用至 Amazon VPC 配額的方式上，有其獨到之處。如需詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的[「AWS受管字首清單權重](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html#aws-managed-prefix-list-weights)」。

# 搭配 AWS SDK 使用 CloudFront
<a name="sdk-general-information-section"></a>

AWS 軟體開發套件 (SDKs) 適用於許多熱門的程式設計語言。每個 SDK 都提供 API、程式碼範例和說明文件，讓開發人員能夠更輕鬆地以偏好的語言建置應用程式。


| SDK 文件 | 代碼範例 | 
| --- | --- | 
| [適用於 C\$1\$1 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-cpp) | [適用於 C\$1\$1 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/cpp) | 
| [AWS CLI](https://docs.aws.amazon.com/cli) | [AWS CLI 程式碼範例](https://docs.aws.amazon.com/code-library/latest/ug/cli_2_code_examples.html) | 
| [適用於 Go 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-go) | [適用於 Go 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/gov2) | 
| [適用於 Java 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-java) | [適用於 Java 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2) | 
| [適用於 JavaScript 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-javascript) | [適用於 JavaScript 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3) | 
| [適用於 Kotlin 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-kotlin) | [適用於 Kotlin 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/kotlin) | 
| [適用於 .NET 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-net) | [適用於 .NET 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/dotnetv3) | 
| [適用於 PHP 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-php) | [適用於 PHP 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php) | 
| [AWS Tools for PowerShell](https://docs.aws.amazon.com/powershell) | [AWS Tools for PowerShell 程式碼範例](https://docs.aws.amazon.com/code-library/latest/ug/powershell_5_code_examples.html) | 
| [適用於 Python (Boto3) 的 AWS SDK](https://docs.aws.amazon.com/pythonsdk) | [適用於 Python (Boto3) 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/python) | 
| [適用於 Ruby 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-ruby) | [適用於 Ruby 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/ruby) | 
| [適用於 Rust 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-rust) | [適用於 Rust 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1) | 
| [適用於 SAP ABAP 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-sapabap) | [適用於 SAP ABAP 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/sap-abap) | 
| [適用於 Swift 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-swift) | [適用於 Swift 的 AWS SDK 程式碼範例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/swift) | 

**可用性範例**  
找不到所需的內容嗎？ 請使用本頁面底部的**提供意見回饋**連結申請程式碼範例。

## 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 經過認證的專業人員和專家尋求協助。