回源301/302跟隨功能同時支援來源站點的301和302響應狀態代碼,301和302狀態代碼均支援相同功能。配置該功能後,CDN節點會直接處理來源站點的301/302響應,減少資料互動流程,加快使用者擷取資源的速度。
前提條件
使用者來源站點使用了301/302重新導向方式去實現商務邏輯。
背景資訊
301/302是HTTP協議中的狀態代碼,表示已存在的資源被臨時改變了位置,導致使用者無法訪問到對應的資源。基於此情況,伺服器通常會在回應標頭中加入Location參數,當用戶端接收到帶有Location頭的301/302響應時,會跳轉到Location對應的地址請求資源。
工作原理
回源301/302跟隨功能指CDN節點在回源請求資源時,若收到來源站點返回的301/302狀態代碼,CDN節點會直接跳轉到Location地址擷取資源,而不會將301/302狀態代碼返回給使用者。
使用者請求訪問
http://example.com/examplefile.txt檔案。CDN節點上未緩衝該檔案,回源請求。
來源站點返回301/302狀態代碼,Location地址為
http://www.example.org/examplefile.txt。CDN節點收到來源站點的響應後,向Location地址
http://www.example.org/examplefile.txt發起請求擷取資源。CDN節點擷取到所需資源後,緩衝到CDN節點上。
CDN節點將擷取到的資源返回給使用者。
此時,如果其他使用者再請求訪問http://example.com/examplefile.txt檔案,會直接在CDN節點命中緩衝並返回給使用者。
注意事項
配置回源301/302跟隨之前,請先確認CDN是否配置了預設回源HOST或者指定來源站點回源HOST:
未配置預設回源HOST或指定來源站點回源HOST:當來源站點響應“301/302狀態代碼+Location URL”給CDN節點時,回源請求的HOST頭將使用Location網域名稱。
配置了預設回源HOST:當來源站點響應“301/302狀態代碼+Location URL”給CDN節點時,回源請求的HOST頭將使用CDN配置的HOST頭。如果來源站點要求使用Location網域名稱作為回源HOST,請使用指定來源站點回源HOST功能。
來源站點響應給CDN節點的Location頭部的格式支援以下3種:
Location: http://www.example.net/index.html:CDN節點將使用Location中的完整URL。Location: //www.example.net/index.htmL:CDN節點將使用302前的回源協議加上Location中的資訊拼接成一個URL。Location: /index.html:CDN節點將使用302前的回源協議和網域名稱加上Location中的資訊拼接成一個URL。
操作步驟
登入CDN控制台。
在左側導覽列,單擊域名管理。
在網域名稱列表中選擇目標網域名稱,單擊操作列的管理。
單擊回源配置,在配置頁簽的回源301/302跟隨地區開啟開關。

在彈出的對話方塊中配置相關參數,然後單擊確定。
參數
描述
301/302跟隨次數上限
指在一次使用者請求過程中,CDN節點可以跟隨Location地址跳轉訪問的最大次數,超出限制將直接返回301/302狀態代碼給使用者。預設值為2,取值範圍為1~5。
說明配置301/302跟隨次數上限,會影響回源次數上限。回源次數上限指在一次使用者請求過程中,CDN節點可以回源訪問來源站點的最大次數。
回源次數上限=301/302跟隨次數上限+1,即預設的回源次數上限為3,取值範圍為2~6。
301/302跟隨保留參數
保留:301/302跟隨時保留原請求參數回目標來源站點。如果您選擇保留,那麼請求參數將會傳遞給Location地址對應的伺服器。
不保留:301/302跟隨時不保留原請求參數回目標來源站點。
301/302跟隨保留要求標頭
保留:301/302跟隨時保留原要求標頭回目標來源站點。如果您選擇保留,那麼要求標頭參數將會傳遞給Location地址對應的伺服器。
不保留:301/302跟隨時不保留原要求標頭回目標來源站點。
配置樣本
配置情境:您來源站點的資源挪至其他地址,但您並不希望您的使用者感知該變動,希望使用原有網域名稱正常訪問資源。
配置方式:網域名稱example.com開啟回源301/302跟隨,配置如下:
結果說明:使用者請求http://example.com/examplefile.txt檔案,CDN節點未緩衝時,向來源站點請求資源。來源站點返回301/302狀態代碼和重新導向地址http://www.example.org/examplefile.txt。
CDN節點收到301/302狀態代碼後,向重新導向地址發起請求(最多請求兩次,失敗後返回301/302狀態代碼給使用者)。
CDN節點擷取資源,返回給使用者,並緩衝至CDN節點。
其他使用者再請求該檔案時,CDN直接返回已緩衝資源。