PHP 防盜鏈的方法

2017-02-21 1377 3 編輯:深圳網站建設 來源:互聯網

深正互聯深圳網站建設是一家專業的網站設計公司,如您有網站方面的需求,請您關注我們,電話13828884598

在PHP中如何實現防盜鏈,下面簡要說一下原理:我們可以在前頁隨機產生一個隨機數(0-15)以內,可保存在session內,然后將URL使用此標記進行運算,怎么運算就看你用什么方法了,不過最終還是要轉換回來的。在后頁檢測是否有此標記,有則進行逆運算,然后將變量取出,這種方法實現起來簡單,優點也就是很好的防盜鏈,不過也有缺點是,那就是如果將網頁保存到本地,則盜鏈會失效。

<?php

ob_start();

session_start();

if(isset($_SESSION[key])){ //有鑰匙

    $key=$_SESSION[key];  //獲得鑰匙

    $str=$_SERVER[QUERY_STRING];    //獲得被加密數據

    $decryptstr=decrypt($str,$key);    //使用鑰匙解開數據(注意,這里就是你的逆算法)

    ................//(分解數據到變量中)

}else{//無鑰匙

    $key=dechex(rand(0,15));    //產生鑰匙

    //如果已經是最后一頁,而不允許盜鏈的話

    //echo "您的鏈接來源非法...";

    //exit();

}

?>

HTML網頁的正文<body></body>里的顯示部分,一般含有很多鏈接的

<?php

$htmlcontent=ob_get_contents();//獲取所有HTML內容

..................//替換所有連接參數href=url?被替換的數據(一組正則)

ob_end_flush(); //輸出HTML內容(href=已經加密后的數據)

?>

高端網站建設

本站文章均為深正網站建設摘自權威資料,書籍,或網絡原創文章,如有版權糾紛或者違規問題,請即刻聯系我們刪除,我們歡迎您分享,引用和轉載,但謝絕直接搬磚和抄襲!感謝...
關注深正互聯
七星彩头尾