中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中怎么使用nginx實現一個防盜鏈功能

發布時間:2021-06-18 18:11:37 來源:億速云 閱讀:244 作者:Leah 欄目:大數據

本篇文章為大家展示了php中怎么使用nginx實現一個防盜鏈功能,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

說明:服務器A:源服務器、服務器B:目標服務器

場景:服務器A的一篇文章被服務器B通過爬蟲抓取 但圖片鏈接還是通過服務器B進行訪問

          此時,圖片數量多或文件過大,會對服務器A造成帶寬的消耗

思路:添加防盜鏈

解決:通過防盜鏈來進行處理

           1.通過Referer來進行判斷【不推薦 referer可以進行偽造 僅提高訪問門檻】

              ····安裝nginx模塊 ngx_http_referer_module 進行配置以達到效果

            2.通過sgin(簽名)進行驗證【推薦 簽名算法驗證 難以破解】

              ····安裝nginx模塊 accesskey模塊

#開啟accesskey 
accesskey             on 
#設置加密模式md5和sha-1 二選一
accesskey_hashmethod  md5|sha-1;
#設置加密參數 可自行定義 
accesskey_arg         "sgin";
#設置加密算法 按照博主的算法 應該是這樣 md5(check_sign.客戶端IP)
accesskey_signature   "check_sign$remote_addr";

#搞定之后重啟一下nginx

        ····接下來在php進行加密 如果不帶加密參數進行驗證 會返回403

<?php 
  //假設當前目錄下存在logo.png


  // 在瀏覽器中預覽 發現返回403
  echo  "<img src='./logo.png'>";
  
 
  // 再次在瀏覽器中預覽 可以正常顯示 (如果你選擇的是sha-1加密則使用sha1函數進行加密)
  $sign = md5('sign'.$_SERVER['REMOTE_ADDR']);
  echo "<img src='./logo.png?sign={$sign}'>";
  

   // 需要注意 php和nginx的加密一定要相同 否則無法驗證成功
?>

上述內容就是php中怎么使用nginx實現一個防盜鏈功能,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

合川市| 吴桥县| 赤城县| 汕尾市| 宾阳县| 岱山县| 东海县| 游戏| 罗平县| 禄丰县| 阳新县| 通许县| 大城县| 开平市| 黄浦区| 合江县| 梨树县| 韶山市| 文安县| 中牟县| 鲁甸县| 科技| 阿巴嘎旗| 郸城县| 黎平县| 兰州市| 安阳县| 临沂市| 永康市| 余干县| 于都县| 深圳市| 芦溪县| 富阳市| 乡宁县| 昌平区| 称多县| 冕宁县| 茶陵县| 石景山区| 六盘水市|