從其它網站上的圖片顯示在自己的網站上,有時會遇到403 forbidden的問題,比如
點擊其中的一個圖片查看顯示
直接通過瀏覽器訪問圖片的鏈接,圖片能正常顯示出來。
后來查到原因是因為圖片源網站做了Anti HotLinking反盜鏈。
解決辦法:
<!-- 解決防盜鏈 -->
<meta name="referrer" content="never"> <!--完美解決-->
知識點:
http協議中的referer 的 metedata 參數可以設置為以下幾種類型的值:
- never:刪除 http head 中的 referer;
- always:不改變http header 中的 referer 的值,注意:這種情況下,如果當前頁面使用了 https 協議,而要加載的資源使用的是 http 協議,加載資源的請求頭中也會攜帶 referer。
- origin :只發送 origin 部分;
- default:如果當前頁面使用的是 https 協議,而正要加載的資源使用的是普通的 http 協議,則將 http header 中的 referer 置為空;
如果在文檔中插入 meta 標簽,並且 name 屬性的值為 referer,瀏覽器客戶端將按照如下步驟處理這個標簽:
1.如果 meta 標簽中沒有 content 屬性,則終止下面所有操作
2.將 content 的值復制給 referrer-policy ,並轉換為小寫
3.檢查 content 的值是否為上面 list 中的一個,如果不是,則將值置為 default