配置限制訪問CDN資源的用戶時,如果遇到疑問請參考以下常見問題及處理建議。
IP黑白名單配置時有IP地址數量限制,配置IP地址段算1個還是多個IP地址數?
CDN配置IP黑白名單時,最多可配置約700個IPv6地址,2000個IPv4地址。
1個IP地址段算1個IP地址數配置。
需要在源站將CDN設置為訪問白名單,能提供阿里云CDN訪問源站的節點IP嗎?
如果您的日峰值帶寬為1 Gbps以上,請填寫信息申請DescribeL2VipsByDomain接口的調用權限,獲取指定域名L2節點的IP地址(即回源IP地址列表)。
如果您不滿足要求,建議可以在您的源站放開防火墻策略。
為什么IP黑名單中的IP仍可訪問資源?
CDN作為服務端,無法控制客戶端的訪問。配置IP黑名單后,該IP地址請求發送到CDN,會返回錯誤碼403,并且CDN日志中仍會記錄該請求記錄。查看日志的方法,請參見下載離線日志。
如何獲取客戶端真實IP地址?
使用CDN之后,可以通過X-Forwarded-For字段獲取客戶端真實IP地址,具體操作請參見獲取客戶端真實IP。
URL鑒權異常導致訪問CDN加速資源返回403錯誤?
為了保護站點的資源不被非法站點下載盜用,采用URL鑒權方式保護源站資源,在開啟阿里云CDN的URL鑒權功能后,訪問CDN加速資源返回403錯誤,通過瀏覽器的開發者工具,在Response Header中查看詳細錯誤信息如下:
報錯信息:X-Tengine-Error:denied by req auth: no url arg auth_key
報錯信息:X-Tengine-Error: denied by req auth: expired timestamp
問題原因:鑒權過期,CDN開啟了鑒權,并且URL攜帶了鑒權參數,但是鑒權參數過期。
解決方案:如果鑒權過期,請參見URL鑒權,重新生成鑒權URL。
報錯信息:X-Tengine-Error: denied by req auth: invalid md5hash
問題原因:鑒權計算錯誤,鑒權參數的MD5值計算不正確。
解決方案:建議先使用CDN控制臺的地址生成器生成URL來對比自己的鑒權代碼,或者參見鑒權代碼示例。
阿里云CDN URL鑒權和遠程鑒權可以同時開啟嗎?
可以,阿里CDN URL鑒權和遠程鑒權可以同時開啟,請求先經過URL鑒權,再經過遠程鑒權。
遠程鑒權中鑒權服務器支持配置為內網地址嗎?
不支持,遠程鑒權服務器需要配置為公網地址。
鑒權服務器返回的狀態碼既不是成功狀態碼,也不是失敗狀態碼,CDN為什么會直接放行?
為避免因為一些異常情況阻斷所有的用戶請求,如果鑒權服務器返回的狀態碼既不是成功狀態碼,也不是失敗狀態碼,CDN節點默認放過用戶請求(例如:鑒權成功狀態碼設置為200,鑒權服務器返回201時,結果為放過用戶請求)。
您可以在控制臺設置其他狀態碼是否放行參數,選擇是否放行鑒權服務器返回的其他狀態碼。
遠程鑒權服務器發生故障或宕機時,CDN會直接放行所有請求嗎?
不會。遠程鑒權服務器發生故障或宕機時,CDN與鑒權服務器之間的數據交互超時后,按照設置的鑒權超時之后的動作參數,選擇是否放行鑒權超時的用戶請求。