最近公司有個接口須要針對幾個域名加白名單,諮詢網宿同窗後,網宿同窗問我是否須要容許空refer訪問,當時一下就懵逼了,而後問了網宿同窗空referer是什麼意思,當時沒聽懂,後來查了下才明白,因而記錄下。瀏覽器
這裏的 Referer 指的是HTTP頭部的一個字段,也稱爲HTTP來源地址(HTTP Referer),用來表示從哪兒連接到目前的網頁,採用的格式是URL。換句話說,藉着 HTTP Referer 頭部網頁能夠檢查訪客從哪裏而來,這也常被用來對付僞造的跨網站請求。例如我如今在bing中搜索kubeasz,而後經過檢索的第一條點進去,這個時候按F12後就會顯示來源地址來自https://cn.bing.com/,截圖以下所示:網站
首先,咱們對空Referer的定義爲,Referer 頭部的內容爲空,或者,一個HTTP請求中根本不包含Referer頭部。ui
那麼何時HTTP請求會不包含Referer字段呢?根據Referer的定義,它的做用是指示一個請求是從哪裏連接過來,那麼當一個請求並非由連接觸發產生的,那麼天然也就不須要指定這個請求的連接來源。spa
好比,直接在瀏覽器的地址欄中輸入一個資源的URL地址,那麼這種請求是不會包含Referer字段的,由於這是一個「憑空產生」的HTTP請求,並非從一個地方連接過去的,例如我在瀏覽器中輸入https://cn.bing.com/,而後按F12查看,是不會顯示referer這個字段的,截圖以下所示:.net
blog
但若是不指名須要包含空的Referer,那麼經過瀏覽器直接訪問也是被禁止的。接口