PHP はブラウザーのアドレスを取得しますが、更新後にアドレスを取得できなくなります。
私のx.phpコードは次のとおりです。このコードの一般的な意味は次のとおりです。ある Web サイトを使用して、別の Web サイトのリソースを参照します。
私のウェブサイトは http://www.123.com と http://www.abc.com
です。
http://www.123.com/x.php/love.mp3 と入力すると、実際に開くのは
です。
http://www.abc.com/abc/love.mp3。次のコードは完全に実装可能です。
header("content-Type: text/html; charset=Utf-8");
$SERVER=$_SERVER["REQUEST_URI"];
preg_match("/php/([sS] ).mp3/",$SERVER,$url);
$urlname=$url[1];
$downurl='http://www.abc.com/abc/'.$urlname.'.mp3';
header("location:$downurl");
?>
Web ページのプレーヤーは http://www.123.com/x.php/love.mp3
を再生できます。
その後、ホットリンク防止とダウンロード防止のコードを追加しました:
header("content-Type: text/html; charset=Utf-8");
$SERVER=$_SERVER["REQUEST_URI"];
preg_match("/php/([sS] ).mp3/",$SERVER,$url);
$urlname=$url[1];
$downurl='http://www.abc.com/abc/'.$urlname.'.mp3';
$url = $_SERVER["HTTP_REFERER"] //完全なソース URL を取得します
$str = str_replace("http://","",$url) //http://
を削除します。
$strdomain =explode("/",$str); // "/"
で配列に区切る
$domain = $strdomain[0] //最初の「/」より前の文字を取得します
;
if ($domain=="www.123.com"){
header("location:$downurl");
}
if ($domain==""){
header("場所:http://www.123.com/daolian.mp3");
}
if ($domain!="www.123.com"){
header("場所:http://www.123.com/daolian.mp3");
}
?>
修正が完了すると、ホットリンク防止とダウンロード防止が実装され、Web ページ上のプレーヤーで http://www.123.com/x.php/love.mp3 を再生すると、再生できなくなります。コードはどこから来ていますか?