你們知道$_SESSION['HTTP_REFERER']能夠獲取當前連接的上一個鏈接的來源地址,即連接到當前頁面的前一頁面的 URL 地址,能夠作到防盜鏈做用,只有點擊超連接(即<A href=...>) 打開的頁面纔有HTTP_REFERER環境變量, 其它如 window.open()、 window.location=...、window.showModelessDialog()等打開的窗口都沒有HTTP_REFERER 環境變量。php
寫個函數吧 簡單的能夠、起到防盜鏈做用瀏覽器
<?服務器
function checkurl(){ less
//若是直接從瀏覽器鏈接到頁面,就鏈接到登錄窗口 函數
//echo "referer:".$_SESSION['HTTP_REFERER']; url
if(!isset($_SESSION['HTTP_REFERER'])) { blog
header("location: login"); 域名
exit; it
} io
$urlar = parse_url($_SESSION['HTTP_REFERER']);
//若是頁面的域名不是服務器域名,就鏈接到登錄窗口
if($_SERVER['HTTP_HOST'] != $urlar["host"] && $urlar["host"] != "202.102.110.204" && $urlar["host"] != "http://blog.163.com/fantasy_lxh/") {
header("location: login.php");
exit;
}
}
checkurl()
?>