什麼是Referer
Referer是HTTP Header的一部分,當瀏覽器向Web服務器發送請求時,一般會帶上Referer,告知服務器從哪個頁面鏈接過來的。
Referer的作用
-
防盜鏈。比如,網站訪問自己的圖片服務器,圖片服務器取到Referer來判斷是不是自己的域名,如果是就繼續訪問,不是則攔截。
-
數據統計。比如,統計用戶是從哪裏鏈接過來訪問的。
什麼是空Referer
空Referer指的是HTTP請求中Referer頭部內容爲空,或者HTTP請求中不包含Referer頭部。有兩種情況Referer爲空,如下所示。
-
當請求並不是由鏈接觸發產生。比如,直接把地址輸入地址欄裏打開頁面。
-
從HTTPS頁面上的鏈接訪問到非加密的HTTP頁面時,在HTTP頁面上是檢查不到Referer的。
在防盜鏈設置中允許空Referer和不允許空Referer的區別
在防盜鏈的白名單設置中,如果指明白名單中包含空的Referer,那麼通過瀏覽器地址欄直接訪問該資源URL是可以訪問到的。但如果不指明需要包含空的Referer,那麼通過瀏覽器直接訪問是被禁止的。
什麼是跨域
在日常的項目開發時會不可避免的需要進行跨域操作,而在實際進行跨域請求時,經常會遇到類似 No 'Access-Control-Allow-Origin' header is present on the requested resource.
這樣的報錯。這類錯誤一般是由於CORS跨域驗證機制設置不正確導致的。
參考文章:
https://www.jianshu.com/p/91bf4e276210