HTTP Referer是header的一部分, 當瀏覽器向web服務器發送請求的時候,通常會帶上Referer,告訴服務器我是從哪一個頁面連接過來的,服務器藉此能夠得到一些信息用於處理。經過該頭域的值,咱們能夠檢測到訪問目標資源的源地址html
前段日子 在自學作項目的時候發現 明明在項目中引用了線上存在的圖片 可是在本身的項目中卻怎麼也顯示出來web
查閱資料後發現是這些第三方網站設置了防盜鏈瀏覽器
先說說防盜鏈的原理,http 協議中,若是從一個網頁跳到另外一個網頁,http 頭字段裏面會帶個 Referer。安全
這裏的Referer是因爲歷史緣由致使了拼寫錯誤 後來也就一直沿用。服務器
圖片服務器經過檢測 Referer 是否來自規定域名,來進行防盜鏈。markdown
若是盜用網站是 https 的 protocol,而圖片連接是 http 的話,app
則從 https 向 http 發起的請求會由於安全性的規定,而不帶 referer,從而實現防盜鏈的繞過。ide
官方輸出圖片的時候,判斷了來源(Referer),就是從哪一個網站訪問這個圖片,網站
若是是你的網站去加載這個圖片,那麼Referer就是:你的網站地址;ui
你網站地址,確定沒在官方的白名單內,因此就看不到圖片了。
所以,若不發送Referer,也就是沒有來源。那麼官方那邊,就認爲是從瀏覽器直接訪問的,因此就能加載正常的圖片了。
<meta name="referrer" content="never">
複製代碼
好比在掘金上 查看個人一篇文章中一張圖片的Request Headers 就能夠看到Referer