php でホットリンクを禁止する方法: 最初に Web サイトの公開ファイルに「$key=sdkfjwojf32413」を定義し、次にダウンロード ページで乱数を生成し、次に md5 暗号化文字列を生成し、最後にソフトウェアの真のバージョン アドレスをダウンロードし、証明書コードをセッションに保存します。
推奨事項: 「PHP ビデオ チュートリアル 」
ホット リンクとは、サービス プロバイダー自体がリンクを行わないことを意味します。サービスのコンテンツは、技術的手段を使用して、他の有益なエンドユーザー インターフェイス (広告など) をバイパスし、エンドユーザーに他のサービス プロバイダーのサービス コンテンツを自社の Web サイト上で直接提供することにより、エンドユーザーの閲覧や閲覧を欺きます。クリックスルー率。受益者はリソースをまったく提供しないか、ほとんど提供しませんが、実際のサービスプロバイダーは何の利益も受け取りません。ホットリンクの防止は、すべての Web サイト開発者にとって重要なタスクです。
ホットリンクの防止を適切に行うと、Web サイト サーバーへの負荷を大幅に軽減できます。ここでは、PHP でホットリンク防止を実装する方法を共有します:
一般的なダウンロード手順:検索→検索結果リストを出力→ソフトの詳細ページに入る→ダウンロードボタンをクリック→ダウンロードページが開く→ダウンロードをクリックしてダウンロードを開始
私の方法は、ダウンロード ページで大騒ぎする
##まず、Web サイトの公開ファイルにキーに相当する $key=sdkfjwojf32413 を定義します。ダウンロード ページ: $certcode = '84615354' (それぞれ、生成されるものは開くたびに異なります)次に、上記の 2 つの変数とソフトウェアの ID を使用して、md5() 暗号化文字列を生成します次に、ソフトウェアの実際のダウンロード アドレスを生成します: file.php?id =5&codekey=ksfjwofsdkfsfここでの ID はソフトウェア番号であり、それに基づいてデータベースからソフトウェア アドレスを見つけることができます。 $codekey=md5($id.$certcode.$key)その後、証明書コードをセッションに保存します。
file.php のパラメーターからコードキーと ID を取得し、次から $key を取得します。公開ファイルを作成し、セッションから $certcode を取得します
1. 単純なホットリンク対策
$ADMIN[defaulturl] = "http://www.vvschool.cn/404.htm";//盗链返回的地址 $okaysites = array("http://www.vvschool.cn/","http://www.siyizhu.com"); //白名单 $ADMIN[url_1] = "http://www.vvschool.cn/temp/download/";//下载地点1 $ADMIN[url_2] = "";//下载地点2,以此类推 $reffer = $HTTP_REFERER; if($reffer) { $yes = 0; while(list($domain, $subarray) = each($okaysites)) { if (ereg($subarray,"$reffer")) { $yes = 1; } } $theu = "url"."_"."$site"; if ($ADMIN[$theu] AND $yes == 1) { header("Location: $ADMIN[$theu]/$file"); } else { header("Location: $ADMIN[defaulturl]"); } } else { header("Location: $ADMIN[defaulturl]"); }
//放置下载软件的根目录相对于当前脚本目录的相对目录
$fileRelPath= "../../software";
//例外允许连接的网址,注意:自身域名不需要填入,设定为肯定可以下载,
// 空字符串("")表示直接输入网址下载的情况
$excludeReferArr= array("www.wreny.com","wreny.com");
chdir($fileRelPath);
$fileRootPath= getcwd() ."/";
$filePath=$HTTP_GET_VARS["file"];
$url=parse_url($_SERVER["HTTP_REFERER"]);
if($url[host]!=$_SERVER["HTTP_HOST"] && !in_array($referHost,$excludeReferArr)){
(2) 画像のホットリンク対策 画像に透かしを追加しますホットリンカーは目的を達成することはできますが、宣伝目的の Web サイトで自分自身に損害を与えることにもなります。 以上がPHPアンチホットリンクの基本的な考え方と設定方法であり、皆様の学習の一助になれば幸いです。
以上がPHPでホットリンクを禁止する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。