本篇文章為大家展示了php中怎么使用nginx實現(xiàn)一個防盜鏈功能,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)公司專注于潮安網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供潮安營銷型網(wǎng)站建設(shè),潮安網(wǎng)站制作、潮安網(wǎng)頁設(shè)計、潮安網(wǎng)站官網(wǎng)定制、成都微信小程序服務(wù),打造潮安網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供潮安網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
說明:服務(wù)器A:源服務(wù)器、服務(wù)器B:目標(biāo)服務(wù)器
場景:服務(wù)器A的一篇文章被服務(wù)器B通過爬蟲抓取 但圖片鏈接還是通過服務(wù)器B進(jìn)行訪問
此時,圖片數(shù)量多或文件過大,會對服務(wù)器A造成帶寬的消耗
思路:添加防盜鏈
解決:通過防盜鏈來進(jìn)行處理
1.通過Referer來進(jìn)行判斷【不推薦 referer可以進(jìn)行偽造 僅提高訪問門檻】
····安裝nginx模塊 ngx_http_referer_module 進(jìn)行配置以達(dá)到效果
2.通過sgin(簽名)進(jìn)行驗證【推薦 簽名算法驗證 難以破解】
····安裝nginx模塊 accesskey模塊
#開啟accesskey accesskey on #設(shè)置加密模式md5和sha-1 二選一 accesskey_hashmethod md5|sha-1; #設(shè)置加密參數(shù) 可自行定義 accesskey_arg "sgin"; #設(shè)置加密算法 按照博主的算法 應(yīng)該是這樣 md5(check_sign.客戶端IP) accesskey_signature "check_sign$remote_addr"; #搞定之后重啟一下nginx
····接下來在php進(jìn)行加密 如果不帶加密參數(shù)進(jìn)行驗證 會返回403
<?php //假設(shè)當(dāng)前目錄下存在logo.png // 在瀏覽器中預(yù)覽 發(fā)現(xiàn)返回403 echo "<img src='./logo.png'>"; // 再次在瀏覽器中預(yù)覽 可以正常顯示 (如果你選擇的是sha-1加密則使用sha1函數(shù)進(jìn)行加密) $sign = md5('sign'.$_SERVER['REMOTE_ADDR']); echo "<img src='./logo.png?sign={$sign}'>"; // 需要注意 php和nginx的加密一定要相同 否則無法驗證成功 ?>
上述內(nèi)容就是php中怎么使用nginx實現(xiàn)一個防盜鏈功能,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享名稱:php中怎么使用nginx實現(xiàn)一個防盜鏈功能
網(wǎng)站URL:http://m.rwnh.cn/article46/jcjdeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、全網(wǎng)營銷推廣、外貿(mào)網(wǎng)站建設(shè)、云服務(wù)器、、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)