日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

网络安全:图片防盗链的实现原理

發布時間:2023/12/10 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 网络安全:图片防盗链的实现原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

來自:掘金,作者:chenhongdong

鏈接:https://juejin.im/post/5adc0d03518825673a2022b7

前言

防盜鏈,就是防有人盜用你的鏈接。別人在他的網站上引用了你的資源(圖片,音頻),這樣就會浪費你的流量,資源被引用的多了起來,你這邊的服務器可能就扛不住掛了,你說這是多么悲哀的事情!

一般情況下以圖片防盜鏈居多,我們也來看看圖片防盜鏈是如何做出來的。

圖片防盜鏈

先來看個圖,這個圖是我在本地啟了一個服務后,分別加載了百度和360搜索兩個網站的圖片鏈接,對應防盜鏈下的樣子(說好的美少女呢)

百度的做法是用另外一張圖片替換了,而360搜索的做法更粗暴,直接出現了裂圖,訪問403直接給Forbidden了。

這就是所謂的圖片防盜鏈了,畢竟看到這樣的圖,大家也沒了興致,和之前想要的圖片差距太大,也就沒必要再保留了

那么關鍵部分來了,圖片防盜鏈是如何做到的呢?且看下圖

圖中所示,在請求頭中有Host(請求的主機)和Referer(來源)兩個參數,之所以會形成防盜鏈,那是因為Host和referer所對應的值不相同造成的。

下面我們就直接來實踐一下,做一個圖片防盜鏈,上菜;

該圖為整個文件夾目錄結構,下面參考該目錄結構來做,繼續來擼。

//?js部分 const?fs?=?require('fs'); const?path?=?require('path'); const?http?=?require('http'); const?url?=?require('url'); const?getHostName?=?function?(str)?{let?{?hostname?}?=?url.parse(str);return?hostname; };http.createServer((req,?res)?=>?{let?refer?=?req.headers['referer']?||?req.headers['referrer'];??//?請求頭都是小寫的//?先看一下refer的值,去和host的值作對比,不相等就需要防盜鏈了??//?要讀取文件?返回給客戶端let?{?pathname?}?=?url.parse(req.url);let?src?=?path.join(__dirname,?'public',?'.'?+?pathname);//?src代表我要找的文件fs.stat(src,?err?=>?{???//?先判斷文件存不存在if?(!err)?{if?(refer)?{????//?不是所有圖片都有來源let?referHost?=?getHostName(refer);let?host?=?req.headers['host'].split(':')[0];if?(referHost?!==?host)?{//?防盜鏈 fs.createReadStream(path.join(__dirname,?'usr',?'./1.jpg')).pipe(res);}?else?{//?正常顯示,如果路徑存在,可以正常顯示直接返回fs.createReadStream(src).pipe(res);}}?else?{//?正常顯示,如果路徑存在,可以正常顯示直接返回fs.createReadStream(src).pipe(res);}}?else?{res.end('end');}});}).listen(8888);

通過以上不到40行的代碼就完成了圖片防盜鏈,想來也并沒有辣么麻煩,利用請求頭來做的事情還是蠻多的,先來看看防盜鏈的效果吧

<--?html部分?--> <body><img?src="http://www.chenhd.me:8888/2.png"?/> </body>

這里我們修改一下hosts文件,把127.0.0.1指定為兩個不同的域名訪問

  • 127.0.0.1 www.chenhd.me

  • 127.0.0.1 www.chd.me

  • 友情提示

    • windows系統修改hosts文件地址為C:\Windos\System32\drivers\etc下的hosts文件,拷貝hosts文件修改后替換即可

    • mac系統下較為方便通過終端直接sudo vi /etc/hosts修改即可

    由于html部分我們圖片引用的地址就是www.chenhd.me域名下的圖片,所以這種情況屬于正常訪問,直接展示2.png圖片了,就是這么酷

    當修改域名為www.chd.me的時候,再次訪問就發現已經替換為防盜鏈圖片1.jpg了,看如下效果

    以上內容就實現了如何做一個圖片防盜鏈,防止別人使用你的資源,當然不僅僅是圖片防盜鏈,音頻,視頻等也可以根據此方法實現,之后大家也可以在工作中嘗試嘗試。

    文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基礎知識硬件:斷路器、接觸器、繼電器基礎知識

    總結

    以上是生活随笔為你收集整理的网络安全:图片防盗链的实现原理的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲精品国产福利 | 国产精品久久综合青草亚洲AV | 欧美一级片在线 | 很黄很污的视频网站 | 丁香综合| 中文字幕日韩一区二区 | 日本黄色天堂 | 99国产精品99 | 99久久精品一区二区三区 | 五月激情小说网 | 成人片在线看 | 精品国产麻豆 | 亚洲第九页 | 亚洲av无码一区二区乱子伦as | 99情趣网| 久久久久久久久久影院 | 亚洲97色| 国产女大学生av | 91精品久久久久久久久 | 黄网站在线观看视频 | 精品国产乱码久久久久久闺蜜 | 在线观看欧美一区二区 | 天堂俺去俺来也www 欧美大片在线播放 | 香蕉污视频 | 欧美人与动物xxx | 久色在线| 天堂va蜜桃一区二区三区 | 中文一区二区在线播放 | 亚洲av综合色区 | 青青草国产在线 | 91黄色看片 | 中文av一区二区 | 国产精品激情偷乱一区二区∴ | 欧美人与性囗牲恔配 | 成年人的天堂 | 欧美性受xxxx狂喷水 | 国产一级二级毛片 | 日韩乱淫| 精品一区二区三区毛片 | 欧美性xxxxx 亚洲特黄一级片 | 欧洲美女毛片 | www.久久99| 在线成人播放 | 懂色av一区二区三区四区五区 | 小箩莉末发育娇小性色xxxx | 国产一区二区精品久久 | 免费a v网站| 男女网站在线观看 | 神马午夜我不卡 | 国产成人久久77777精品 | 又黄又爽视频在线观看 | 在线观看视频中文字幕 | 麻豆精品一区二区三区 | 无码人妻一区二区三区一 | 日本公妇乱淫免费视频一区三区 | 销魂美女一区二区 | 日日干夜| 日本做爰全过程免费看 | 亚洲AV成人无码精品久久盆瓶 | 国产精品成熟老女人 | 九一福利视频 | 日本老妇性生活 | av资源站最新av| 国产h视频 | 久久久久久久久久久网 | 成年人免费看视频 | 国产精品久久精品三级 | 国产黄色在线播放 | 人人爱爱| 日韩一区二区三区在线免费观看 | 亚洲精品xxxx| 精品玖玖玖 | 色偷偷网 | 在线免费观看视频网站 | 久久涩视频 | 亚洲精品成av人片天堂无码 | 亚洲午夜网站 | 校园春色av | 日日草| 国产精品第二十页 | 自拍偷拍亚洲区 | 欧美精品国产 | 亚洲一区在线不卡 | 中文字幕有码无码人妻av蜜桃 | 91theporn国产在线观看 | av电影一区二区三区 | 丰满人妻一区二区 | 久久亚洲精 | 亚洲国产一区在线 | 中文字幕电影av | 伊人av网站 | 女人扒开屁股让我添 | 4438国产精品一区二区 | 九九av在线 | 狠狠爱av| 久久久高清视频 | 日韩在线免费 | 国产精品婷婷午夜在线观看 | 涩涩视屏 |