第一頁內隨機的產生一個數(0-15)-》dechex()保存在session內
然後將URL使用此標記進行運算,隨便你運算了,不過要能逆過來才行~
第二頁則檢測是否有此標記,有則進行逆運算,然後將變量取出
優點:(必須訪問站點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內容..............(這裡包含很多鏈接的...)
<?php
$htmlcontent=ob_get_contents(); //獲取所有HTML內容
............................... //替換所有連接參數href=url?被替換的數據(一組正則)
ob_end_flush(); //輸出HTML內容(href=已經加密後的數據)
?>