$_SESSION['HTTP_REFERER'] は、現在のリンクの前の接続のソース アドレス、つまり、現在のページにリンクされている前のページの URL アドレスを取得できることは、クリックするだけで防止できることを知っています。ハイパーリンク (例: < ;A href=...>) 開かれたページのみが HTTP_REFERER 環境変数を持ちます。 window.open()、window.location=...、window.showModelessDialog() などの開いたウィンドウには、HTTP_REFERER 環境変数が含まれます。などには HTTP_REFERER 環境変数がありません。
ホットリンクを防ぐ簡単な関数を作成します
function checkurl(){
//ブラウザから直接ページに接続する場合は、ログインウィンドウに接続します
//echo "referer:" .$_SESSION['HTTP_REFERER'];
if(!isset($_SESSION['HTTP_REFERER'])) {
header("location: ログイン") }
$url = parse_url ($_SESSION['HTTP_REFERER']);
//ページのドメイン名がサーバーのドメイン名ではない場合、ログインウィンドウに接続します
if($_SERVER['HTTP_HOST'] != $urlar["ホスト" ] && $urlar["ホスト"] != "202.102.110.204" && $urlar["ホスト"] != "http://blog.163.com/fantasy_lxh/") {
header("location : ログイン .php");
exit;
}
}
checkurl()
?>