

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

# 使用 CloudFront 和 AWS Media Services 交付影片串流
<a name="live-streaming"></a>

若要搭配 CloudFront 使用 AWS Media Services 將即時內容交付給全球受眾，請參閱下列指引。

使用 [AWS Elemental MediaLive](https://docs.aws.amazon.com/medialive/latest/ug/getting-started.html) 即時編碼即時視訊串流。為了編碼大型視訊串流，MediaLive 會將其壓縮至可分配給檢視器的較小版本 (「編碼」**)。

壓縮即時視訊串流之後，您可以使用以下兩個主要選項的其中之一來準備和提供內容：
+ **將您的內容轉換成所需格式，然後提供它** – 如果您需要多種格式的內容，請使用 [AWS Elemental MediaPackage](https://aws.amazon.com/mediapackage/) 來封裝不同裝置類型的內容。封裝內容時，您也可以實作其他功能，並新增數位版權管理 (DRM)，以防止未經授權使用您的內容。如需使用 CloudFront 提供 MediaPackage 格式化內容的逐步說明，請參閱[提供格式化為 的即時影片 AWS Elemental MediaPackage](#live-streaming-with-mediapackage)。
+ **使用可擴展的原始伺服器儲存及提供您的內容** – 如果 MediaLive 以瀏覽者使用之所有裝置所需的格式對內容進行編碼，請使用 [AWS Elemental MediaStore](https://docs.aws.amazon.com/mediastore/latest/ug/getting-started.html) 等具有高度可擴展性的原始伺服器來提供內容。如需使用 CloudFront 提供存放於 MediaStore 容器之內容的逐步說明，請參閱[使用 AWS Elemental MediaStore 做為原始伺服器來提供影片](#video-streaming-mediastore)。

當您使用這其中一個選項設定您的原始伺服器後，就可以使用 CloudFront 將即時串流視訊分配給檢視器。

**提示**  
您可以了解可自動部署服務以建置高度可用即時檢視體驗 AWS 的解決方案。若要檢視自動部署此解決方案的步驟，請參閱[即時串流自動化部署](https://docs.aws.amazon.com/solutions/latest/live-streaming/deployment.html)。

**Topics**
+ [使用 AWS Elemental MediaStore 做為原始伺服器來提供影片](#video-streaming-mediastore)
+ [提供格式化為 的即時影片 AWS Elemental MediaPackage](#live-streaming-with-mediapackage)
+ [使用 提供video-on-demand內容 AWS Elemental MediaPackage](#live-streaming-mediapackage-vod)

## 使用 AWS Elemental MediaStore 做為原始伺服器來提供影片
<a name="video-streaming-mediastore"></a>

如果您有儲存於 [AWS Elemental MediaStore](https://docs.aws.amazon.com/mediastore/latest/ug/getting-started.html) 容器中的視訊，可以建立 CloudFront 分佈來提供內容。

若要開始使用，您可以授與 CloudFront 存取您的 MediaStore 容器的權限。然後，建立一個 CloudFront 分佈，並將其設定為可搭配 MediaStore 使用。

**從 AWS Elemental MediaStore 容器提供內容**

1. 依照[允許 Amazon CloudFront 存取您的 AWS Elemental MediaStore 容器](https://docs.aws.amazon.com/mediastore/latest/ug/cdns-allowing-cloudfront-to-access-mediastore.html)中所述的程序進行，然後再回來執行這些步驟，以建立分佈。

1. 透過下列設定建立分佈：

   1. **原始伺服器網域** – 指派至 MediaStore 容器的資料端點。從下拉式清單中，選擇您的即時視訊適用的 MediaStore 容器。

   1. **原始伺服器路徑** – 在存放物件的 MediaStore 容器中的資料夾結構。如需詳細資訊，請參閱[原始伺服器路徑](DownloadDistValuesOrigin.md#DownloadDistValuesOriginPath)。

   1. **新增自訂標頭** – 如果您希望 CloudFront 在將請求轉送到原始伺服器時新增自訂標頭，請新增標頭名稱與值。

   1. **檢視器通訊協定政策** – 選擇**將 HTTP 重新導向至 HTTPS**。如需詳細資訊，請參閱[檢視器通訊協定政策](DownloadDistValuesCacheBehavior.md#DownloadDistValuesViewerProtocolPolicy)。

   1. **快取政策**和**原始伺服器請求政策** 
      + 針對 **Cache policy (快取政策)**，選擇 **Create policy (建立政策)**，然後建立適合您快取需求和區段持續時間的快取政策。建立政策後，重新整理快取政策的清單，然後選擇您剛建立的政策。
      + 針對 **Origin request policy (原始伺服器請求政策)**，從下拉式清單中選擇 **CORS-CustomOrigin**。

   對於其他設定，您可以根據您的其他技術需求或業務需求來設定特定的值。如需適用於分佈的所有選項清單以及設定相關資訊，請參閱[所有分佈設定參考](distribution-web-values-specify.md)。

1. 對於應用程式中的連結 (例如，媒體播放器)，請採用與使用 CloudFront 進行分佈的其他物件相同格式來指定媒體檔案的名稱。

## 提供格式化為 的即時影片 AWS Elemental MediaPackage
<a name="live-streaming-with-mediapackage"></a>

如果您使用 格式化即時串流 AWS Elemental MediaPackage，您可以建立 CloudFront 分佈並設定快取行為來提供即時串流。以下程序假設您已經[建立頻道](https://docs.aws.amazon.com/mediapackage/latest/ug/channels-create.html)，並已使用 MediaPackage 為您的即時視訊[新增端點](https://docs.aws.amazon.com/mediapackage/latest/ug/channels-add-endpoint.html)。

若要手動為 MediaPackage 建立 CloudFront 分佈，請依照下列步驟進行：

**Topics**

### 步驟 1：建立及設定 CloudFront 分佈
<a name="live-streaming-with-mediapackage-create-dist"></a>

完成以下程序，針對您使用 MediaPackage 建立的即時視訊頻道設定 CloudFront 分佈。<a name="live-streaming-with-mediapackage-create-dist-procedure"></a>

**為您的即時視訊頻道建立分佈**

1. 登入 AWS 管理主控台 ，並在 開啟 CloudFront 主控台[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)。

1. 選擇 **Create Distribution (建立分佈)**。

1. 選擇分佈的設定，包括下列項目：  
**原始網域**  
您的 MediaPackage 即時視訊頻道和端點所在的原始伺服器。選擇文字欄位，然後從下拉式清單中，選擇您的即時視訊適用的 MediaPackage 原始網域。您可以將一個網域對應到多個原始端點。  
如果您已使用另一個 AWS 帳戶建立原始網域，請在此欄位中輸入原始 URL 值。原始伺服器必須為 HTTPS URL。  
例如，對於像是 `https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8` 的 HLS 端點，原始網域會是 `3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com`。  
如需詳細資訊，請參閱[原始網域](DownloadDistValuesOrigin.md#DownloadDistValuesDomainName)。  
**原始伺服器路徑**  
提供內容之 MediaPackage 端點的路徑。  
如需有關原始伺服器路徑如何運作的詳細資訊，請參閱 [原始伺服器路徑](DownloadDistValuesOrigin.md#DownloadDistValuesOriginPath)。
**重要**  
須有萬用字元路徑 `*` 才能路由至 CloudFront 分佈中的某處。為了避免不符合明確路徑的請求路由至真實來源的情況，請為該萬用字元路徑建立一個「虛設」來源。  
**Example ：建立「虛設」來源**  

   在下列範例中，端點 `abc123` 和 `def456` 路由至「真實」來源，但對任何其他端點的視訊內容的請求會路由至沒有適當子網域的 `mediapackage.us-west-2.amazonaws.com`，這樣會導致 HTTP `404` 錯誤。

   MediaPackage 端點：

   ```
   https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8
   https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/def456/index.m3u8
   ```

   CloudFront 來源 A：

   ```
   Domain: 3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com
   Path: None
   ```

   CloudFront 來源 B：

   ```
   Domain: mediapackage.us-west-2.amazonaws.com
   Path: None
   ```

   CloudFront 快取行為：

   ```
   1. Path: /out/v1/abc123/* forward to Origin A
   2. Path: /out/v1/def456/* forward to Origin A
   3. Path: * forward to Origin B
   ```

   對於其他分佈設定，請根據您的其他技術需求或業務需求來設定特定的值。如需適用於分佈的所有選項清單以及設定相關資訊，請參閱[所有分佈設定參考](distribution-web-values-specify.md)。

   當您完成選擇其他分佈設定時，請選擇 **Create Distribution (建立分佈)**。

1. 選擇您剛才建立的分佈，然後選擇 **Behaviors (行為)**。

1. 選擇預設的快取行為，然後選擇 **Edit (編輯)**。針對您為原始伺服器選擇的頻道指定正確的快取行為設定。您之後將會新增額外的一或多部原始伺服器，並編輯其快取行為設定。

1. 前往 [CloudFront 分佈頁面](https://console.aws.amazon.com/cloudfront/v4/home#/distributions)。

1. 等到分佈的 **Last modified (上次修改)** 欄中的值從 **Deploying (部署)** 變成日期和時間，則表示 CloudFront 已建立您的分佈。

### 步驟 2：為 MediaPackage 端點的網域新增來源
<a name="live-streaming-with-mediapackage-add-endpoints"></a>

重複這裡的步驟，將每個 MediaPackage 頻道端點新增至您的分佈，並且務必記住要建立「虛設」來源。<a name="live-streaming-with-mediapackage-add-endpoints-procedure"></a>

**新增其他端點當做原始伺服器**

1. 在 CloudFront 主控台中，選擇您為頻道建立的分佈。

1. 選擇 **Origins (原始伺服器)**，然後選擇 **Create origin (建立原始伺服器)**。

1. 針對 **Origin domain (原始網域)**，從下拉式清單中選擇您頻道的 MediaPackage 端點。

1. 對於其他設定，請根據您的其他技術需求或業務需求來設定值。如需詳細資訊，請參閱[原始設定](DownloadDistValuesOrigin.md)。

1. 選擇 **Create Origin (建立原始伺服器)**。

### 步驟 3：為所有端點設定快取行為
<a name="live-streaming-with-mediapackage-create-cache-behavior"></a>

對於每個端點，您都必須設定快取行為，以新增路徑模式來正確地路由傳遞請求。您指定的路徑模式取決於您提供的視訊格式。以下程序包含用於 Apple HLS、CMAF、DASH 和 Microsoft Smooth Streaming 格式的路徑模式資訊。

您通常會針對每個端點設定兩個快取行為：
+ 父系資訊清單，也就是檔案的索引。
+ 區段，也就是影片內容的檔案。<a name="live-streaming-with-mediapackage-create-cache-behavior-procedure"></a>

**為端點建立快取行為**

1. 在 CloudFront 主控台中，選擇您為頻道建立的分佈。

1. 選擇 **Behaviors (行為)**，然後選擇 **Create behavior (建立行為)**。

1. 對於**路徑模式**，使用特定 MediaPackage `OriginEndpoint` GUID 作為路徑字首。  
**路徑模式**  
如果是 HLS 端點 (如 `https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8`)，請建立以下兩個快取行為：  
   + 對於父系和子系資訊清單，請使用 `/out/v1/abc123/*.m3u8`。
   + 對於內容區段，請使用 `/out/v1/abc123/*.ts`。
如果是 CMAF 端點 (如 `https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8`)，請建立以下兩個快取行為：  
   + 對於父系和子系資訊清單，請使用 `/out/v1/abc123/*.m3u8`。
   + 對於內容區段，請使用 `/out/v1/abc123/*.mp4`。
如果是 DASH 端點 (如 `https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.mpd`)，請建立以下兩個快取行為：  
   + 對於父系資訊清單，請使用 `/out/v1/abc123/*.mpd`。
   + 對於內容區段，請使用 `/out/v1/abc123/*.mp4`。
如果是 Microsoft Smooth Streaming 端點 (如 `https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.ism`)，則只會提供清單檔案，所以您只會建立一個快取行為：`out/v1/abc123/index.ism/*`。

1. 對於每個快取行為，請指定下列設定的值：  
**檢視器通訊協定政策**  
選擇 **Redirect HTTP to HTTPS (將 HTTP 重新引導至 HTTPS)**。  
**快取政策和原始伺服器請求政策**  
針對 **Cache policy (快取政策)**，選擇 **Create policy (建立政策)**。針對新的快取政策，請指定下列設定：    
**最短 TTL**  
設定為 5 秒或更少，以協助防止提供過時內容。  
**查詢字串**  
針對 (**Cache key settings (快取金鑰設定)** 中的) **Query strings (查詢字串)**，選擇 **Include specified query strings (包含指定查詢字串)**。針對 **Allow (允許)**，輸入下列值來進行新增，並選擇 **Add item (新增項目)**：  
   + 新增 `m` 作為您希望 CloudFront 用於快取基礎的查詢字串參數。MediaPackage 回應一律包含 `?m=###` 標籤，以擷取端點的修改時間。如果已使用此標籤的另一個值來快取內容，CloudFront 會請求新的資訊清單，而不是提供快取的版本。
   + 如果使用 MediaPackage 中的時間轉換檢視行為功能，請針對資訊清單請求 (`start`、`end` 和 `*.m3u8`)，將 `*.mpd` 和 `index.ism/*` 指定為快取行為的額外查詢字串參數。如此一來，就會提供資訊清單請求內所要求之時段的專屬內容。如需有關時間轉移檢視和格式化內容 start 與 end 請求參數的詳細資訊，請參閱《AWS Elemental MediaPackage 使用者指南》**中的[時間轉移檢視](https://docs.aws.amazon.com/mediapackage/latest/ug/time-shifted.html)。
   + 如果您在 MediaPackage 中使用資訊清單篩選功能，請針對資訊清單請求 (`*.m3u8`、`*.mpd` 和 `index.ism/*`)，將 `aws.manifestfilter` 指定為搭配快取行為使用快取政策中額外的查詢字串參數。這會將您的分佈設定為將 `aws.manifestfilter` 查詢字串轉發到您的 MediaPackage 原始伺服器，這是資訊清單篩選功能運作所必需的。如需詳細資訊，請參閱《AWS Elemental MediaPackage 使用者指南》**中的[資訊清單檔案篩選](https://docs.aws.amazon.com/mediapackage/latest/ug/manifest-filtering.html)。
   + 如果您使用低延遲 HLS (LL-HLS)，請指定 `_HLS_msn` 和 `_HLS_part` 作為您搭配清單檔案請求的快取行為所使用快取政策 (`*.m3u8`) 的其他查詢字串參數。這會將您的分佈設定為將 `_HLS_msn` 和 `_HLS_part` 查詢字串轉送到您的 MediaPackage 來源，如此 LL-HLS 封鎖播放清單請求功能才能運作。

1. 選擇**建立**。

1. 建立快取政策後，返回快取行為建立工作流程。重新整理快取政策的清單，然後選擇您剛建立的政策。

1. 選擇 **Create behavior (建立行為)**。

1. 如果您的端點並非 Microsoft Smooth Streaming 端點，請重複前述的步驟來建立第二個快取行為。

### 步驟 4：啟用標頭為主的 MediaPackage CDN 授權
<a name="live-streaming-with-mediapackage-enable-header-based-cdn-authorization"></a>

我們建議您在 MediaPackage 端點和 CloudFront 分佈之間啟用標頭為主的 MediaPackage CDN 授權。如需詳細資訊，請參閱《*AWS Elemental MediaPackage 使用者指南*》中的[在 MediaPackage 中啟用 CDN 授權](https://docs.aws.amazon.com/mediapackage/latest/ug/cdn-auth-setup.html#cdn-aut-setup-endpoint)。

### 步驟 5：使用 CloudFront 提供即時串流頻道
<a name="live-streaming-with-mediapackage-serve-channel"></a>

在您建立分佈、新增來源、建立快取行為，以及啟用標頭為主的 CDN 授權之後，就可以使用 CloudFront 提供即時串流頻道。CloudFront 會根據您為快取行為設定的設定，將檢視器的請求路由傳送至正確的 MediaPackage 端點。

對於您的應用程式 (例如，媒體播放器) 中的連結，請以 CloudFront URL 的標準格式為媒體檔案指定 URL。如需詳細資訊，請參閱[自訂 CloudFront 中檔案的 URL 格式](LinkFormat.md)。

## 使用 提供video-on-demand內容 AWS Elemental MediaPackage
<a name="live-streaming-mediapackage-vod"></a>

如果您從 AWS Elemental MediaPackage 原始伺服器產生video-on-demand(VOD) 內容，您可以建立 CloudFront 分佈並設定最佳化快取行為，將 VOD 內容提供給檢視器。下列程序假設您已建立具有[封裝組態](https://docs.aws.amazon.com/mediapackage/latest/ug/pkg-cfig-create.html)的[封裝群組](https://docs.aws.amazon.com/mediapackage/latest/ug/pkg-group-create.html)，並使用 MediaPackage [擷取資產](https://docs.aws.amazon.com/mediapackage/latest/ug/asset-create.html)。

若要手動為 MediaPackage 建立 CloudFront 分佈，請依照下列步驟進行：

**Topics**

### 步驟 1：建立及設定 CloudFront 分佈
<a name="live-streaming-mediapackage-vod-create-dist"></a>

完成以下程序，針對您使用 MediaPackage 建立的封裝群組設定 CloudFront 分佈。<a name="live-streaming-with-mediapackage-create-dist-procedure"></a>

**為您的 VOD 內容建立分佈**

1. 登入 AWS 管理主控台 ，並在 開啟 CloudFront 主控台[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)。

1. 選擇 **Create Distribution (建立分佈)**。

1. 選擇分佈的設定，包括下列項目：  
**原始網域**  
MediaPackage 封裝群組的原始伺服器。在文字欄位中輸入原始伺服器 URL 值。原始伺服器必須為 HTTPS URL。  
例如，對於像是 `https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/def456/ghi789/index.m3u8` 的 HLS 端點，原始網域會是 `3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com`。  
如需詳細資訊，請參閱[原始網域](DownloadDistValuesOrigin.md#DownloadDistValuesDomainName)。  
**原始伺服器路徑**  
提供內容的路徑。  
如需有關原始伺服器路徑如何運作的詳細資訊，請參閱 [原始伺服器路徑](DownloadDistValuesOrigin.md#DownloadDistValuesOriginPath)。
**重要**  
須有萬用字元路徑 `*` 才能路由至 CloudFront 分佈中的某處。為了避免不符合明確路徑的請求路由至真實來源的情況，請為該萬用字元路徑建立一個「虛設」來源。  
**Example ：建立「虛設」來源**  

   在下列範例中，封裝組態 `def456` 和 `321xyz` 路由至「真實」原始伺服器，但對任何其他端點的視訊內容的請求會路由至沒有適當子網域的 `mediapackage-vod.us-west-2.amazonaws.com`，這樣會導致 HTTP `404` 錯誤。

   具有兩種封裝組態的封裝群組之單一資產的 MediaPackage 內容 URL：

   ```
   https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/def456/ghi789/index.m3u8
   https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/321xyz/654uvw/index.m3u8
   ```

   CloudFront 來源 A：

   ```
   Domain: 3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com
   Path: None
   ```

   CloudFront 來源 B：

   ```
   Domain: mediapackage-vod.us-west-2.amazonaws.com
   Path: None
   ```

   CloudFront 快取行為：

   ```
   1. Path: /out/v1/*/def456/* forward to Origin A
   2. Path: /out/v1/*/321xyz/* forward to Origin A
   3. Path: * forward to Origin B
   ```

   對於其他分佈設定，請根據您的其他技術需求或業務需求來設定特定的值。如需適用於分佈的所有選項清單以及設定相關資訊，請參閱[所有分佈設定參考](distribution-web-values-specify.md)。

   當您完成選擇其他分佈設定時，請選擇 **Create Distribution (建立分佈)**。

1. 選擇您剛才建立的分佈，然後選擇 **Behaviors (行為)**。

1. 選擇預設的快取行為，然後選擇 **Edit (編輯)**。針對您為原始伺服器選擇的封裝組態指定正確的快取行為設定。您之後將會新增額外的一或多部原始伺服器，並編輯其快取行為設定。

1. 前往 [CloudFront 分佈頁面](https://console.aws.amazon.com/cloudfront/v4/home#/distributions)。

1. 等到分佈的 **Last modified (上次修改)** 欄中的值從 **Deploying (部署)** 變成日期和時間，則表示 CloudFront 已建立您的分佈。

### 步驟 2：為 MediaPackage 封裝群組的網域新增原始伺服器
<a name="live-streaming-mediapackage-vod-add-endpoints"></a>

重複這裡的步驟，將每個 MediaPackage 封裝群組新增至您的分佈，並且務必記住要建立「虛設」原始伺服器。<a name="live-streaming-mediapackage-vod-add-packaging-groups-procedure"></a>

**新增其他封裝群組做為原始伺服器**

1. 在 CloudFront 主控台中，選擇您為頻道建立的分佈。

1. 選擇 **Origins (原始伺服器)**，然後選擇 **Create origin (建立原始伺服器)**。

1. 對於**原始伺服器網域**，輸入 MediaPackage 封裝群組的 URL。

1. 對於其他設定，請根據您的其他技術需求或業務需求來設定值。如需詳細資訊，請參閱[原始設定](DownloadDistValuesOrigin.md)。

1. 選擇 **Create Origin (建立原始伺服器)**。

### 步驟 3：設定所有封裝組態的快取行為
<a name="live-streaming-mediapackage-vod-create-cache-behavior"></a>

對於每個封裝組態，您都必須設定快取行為，以新增路徑模式來正確地路由傳遞請求。您指定的路徑模式取決於您提供的視訊格式。以下程序包含用於 Apple HLS、CMAF、DASH 和 Microsoft Smooth Streaming 格式的路徑模式資訊。

您通常會為每個封裝組態設定多個快取行為：
+ 父系資訊清單，也就是檔案的索引。
+ 區段，也就是影片內容的檔案。格式可能會針對內容使用多個副檔名，視您的組態而定。每個副檔名都需要快取行為。<a name="live-streaming-mediapackage-vod-create-cache-behavior-procedure"></a>

**為封裝組態建立快取行為**

1. 在 CloudFront 主控台中，選擇您為頻道建立的分佈。

1. 選擇 **Behaviors (行為)**，然後選擇 **Create behavior (建立行為)**。

1. 對於**路徑模式**，使用特定 MediaPackage VOD 封裝組態 GUID 作為路徑字首。這是 MediaPackage VOD 路徑中的第二個 GUID。  
**路徑模式**  
如果是 HLS 內容 (如 `https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/def456/ghi789/index.m3u8`)，請建立以下兩個快取行為：  
   + 對於父系和子系資訊清單，請使用 `/out/v1/*/def456/*.m3u8`。
   + 對於內容區段，使用 `/out/v1/*/def456/*.ts` 並重複執行所有必要的區段延伸。
如果是 CMAF 內容 (如 `https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/def456/ghi789/index.m3u8`)，請建立以下快取行為：  
   + 對於父系和子系資訊清單，請使用 `/out/v1/*/def456/*.m3u8`。
   + 對於內容區段，使用 `/out/v1/*/def456/*.mp4` 並重複執行所有必要的區段延伸。
如果是 DASH 內容 (如 `https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/def456/ghi789/index.mpd`)，請建立以下快取行為：  
   + 對於父系資訊清單，請使用 `/out/v1/*/def456/*.mpd`。
   + 對於內容區段，請使用 `/out/v1/*/def456/*.mp4`。
如果是 Microsoft Smooth Streaming 端點 (如 `https://3ae97e9482b0d011.egress.mediapackage-vod.us-west-2.amazonaws.com/out/v1/abc123/def456/ghi789/index.ism/Manifest`)，則只會提供清單檔案，所以您只會建立一個快取行為：`out/v1/*/def456/*/index.ism/*`。

1. 對於每個快取行為，請指定下列設定的值：  
**檢視器通訊協定政策**  
選擇 **Redirect HTTP to HTTPS (將 HTTP 重新引導至 HTTPS)**。  
**快取政策和原始伺服器請求政策**  
針對 **Cache policy (快取政策)**，選擇 **Create policy (建立政策)**。針對新的快取政策，請指定下列設定：    
**最短 TTL**  
設定為 5 秒或更少，以協助防止提供過時內容。  
**查詢字串**  
針對 (**Cache key settings (快取金鑰設定)** 中的) **Query strings (查詢字串)**，選擇 **Include specified query strings (包含指定查詢字串)**。針對 **Allow (允許)**，輸入下列值來進行新增，並選擇 **Add item (新增項目)**：  
   + 如果您在 MediaPackage 中使用資訊清單篩選功能，請針對資訊清單請求 (`*.m3u8`、`*.mpd` 和 `index.ism/*`)，將 `aws.manifestfilter` 指定為搭配快取行為使用快取政策中額外的查詢字串參數。這會將您的分佈設定為將 `aws.manifestfilter` 查詢字串轉發到您的 MediaPackage 原始伺服器，這是資訊清單篩選功能運作所必需的。如需詳細資訊，請參閱《AWS Elemental MediaPackage 使用者指南》**中的[資訊清單檔案篩選](https://docs.aws.amazon.com/mediapackage/latest/ug/manifest-filtering.html)。

1. 選擇**建立**。

1. 建立快取政策後，返回快取行為建立工作流程。重新整理快取政策的清單，然後選擇您剛建立的政策。

1. 選擇 **Create behavior (建立行為)**。

1. 如果您的端點並非 Microsoft Smooth Streaming 端點，請重複前述的步驟來建立第二個快取行為。

### 步驟 4：啟用標頭為主的 MediaPackage CDN 授權
<a name="live-streaming-mediapackage-vod-enable-header-based-cdn-authorization"></a>

我們建議您在 MediaPackage VOD 內容和 CloudFront 分佈之間啟用標頭為主的 MediaPackage CDN 授權。如需詳細資訊，請參閱《*AWS Elemental MediaPackage 使用者指南*》中的[在 MediaPackage 中啟用 CDN 授權](https://docs.aws.amazon.com/mediapackage/latest/ug/cdn-auth-setup.html#cdn-aut-setup-endpoint)。

### 步驟 5：使用 CloudFront 提供 VOD 內容
<a name="live-streaming-mediapackage-vod-serve-content"></a>

在您建立分佈、新增原始伺服器、建立快取行為，以及啟用標頭為主的 CDN 授權之後，就可以使用 CloudFront 提供 VOD 內容。CloudFront 會根據您為快取行為設定的設定，將檢視器的請求路由傳送至正確的 MediaPackage VOD 內容。

對於您的應用程式 (例如，媒體播放器) 中的連結，請以 CloudFront URL 的標準格式為媒體檔案指定 URL。如需詳細資訊，請參閱[自訂 CloudFront 中檔案的 URL 格式](LinkFormat.md)。