CDN在發起回源請求時攜帶的HOST請求頭默認為加速域名,您可使用本功能自定義回源HOST請求頭。
背景介紹
當您有多個加速域名,每個加速域名負責加速不同靜態的資源,常見的做法是開發多個源站支持不同加速域名發起回源請求資源。
如果加速域名比較多,回源流量很少時,重復建站會帶來資源的極度浪費,您可通過虛擬站點技術解決該問題。
虛擬站點技術
虛擬站點技術是一種在單個Web服務器上提供多個網站服務的技術。服務器通過使用不同的域名或主機名來區分和隔離不同的網站。當用戶請求訪問某個特定的域名或主機名時,服務器會根據請求的域名或主機名,將請求定向到相應的虛擬站點,從而提供相應的網站內容。示意圖如下:
Nginx相關實現
Nginx支持通過server
區塊配置多個虛擬站點,示例如下:
server {
listen 80;
server_name example.org www.example.org;
...
}
server {
listen 80;
server_name example.net www.example.net;
...
}
server {
listen 80;
server_name example.com www.example.com;
...
}
項目配置了3個虛擬站點,分別是example.org
、example.net
、example.com
。Nginx優先在HTTP請求頭中查找HOST字段以確定請求需要路由到的虛擬站點,如果沒有匹配到任何一個虛擬站點,Nginx會使用默認的虛擬站點提供服務(若未配置,默認為第一個server
配置為默認站點)。
默認回源HOST
當您訪問一個URL鏈接時,不指定HOST字段,該請求的HOST字段默認為您訪問URL鏈接的主機+端口部分。但是CDN默認將HOST字段設置為加速域名,您也可以根據您源站的虛擬站點配置,自定義HOST字段的默認值。
您的源站服務器需支持通過HOST請求頭匹配不同的虛擬站點,否則該功能配置無法達到預期的功能效果。
操作步驟
登錄CDN控制臺。
在左側導航欄,單擊域名管理。
在域名管理頁面,找到目標域名,單擊操作列的管理。
在指定域名的左側導航欄,單擊回源配置。
在默認回源HOST區域,單擊修改配置。
打開回源HOST開關,選擇域名類型。
參數
說明
加速域名
以終端用戶訪問的加速域名作為回源HOST。
源站域名
以源站服務器的域名作為回源HOST。
說明源站信息為IP地址類型時,源站域名選項置灰,不可選擇。
源站信息為OSS域名時,將會同步開啟回源HOST功能,并且設置域名類型為源站域名。
自定義域名
以用戶指定的域名作為回源HOST。
說明自定義域名確保為您已經綁定的域名,否則回源失敗。
您的源站綁定了多個域名,您希望用戶從指定域名獲取資源。
單擊確定。
配置示例
示例一:當源站類型為域名。
域名 | 說明 |
加速域名:
源站地址:
| 功能默認關閉。您可主動開啟默認回源HOST功能。 回源域名類型說明:
|
示例二:當源站類型為IP地址。
域名 | 說明 |
加速域名:
源站地址:
| 功能默認關閉。您可主動開啟默認回源HOST功能。 回源域名類型說明:
|
示例三:當源站類型為OSS域名。
域名 | 說明 |
加速域名:
源站地址:
| 當源站信息為OSS域名時,CDN將會同步開啟回源HOST功能,并且設置域名類型為源站域名。 回源域名類型說明:
|