質問

次のようなリンクにリダイレクトするスクリプトがあります

header("Location:http://foo.com/abc.xyz");

しかし、私はどちらかを設定したいです HTTP_REFERRER することが http://foo.com また blank そのため、サイト http://foo.com 参照がスクリプトがインストールされている別のドメインから送信されたことを追跡できません。

役に立ちましたか?

解決

もちろん、参照者を吹き込む方法があります。それがどれほど有用であるかは、あなたが決めることが何かです:)

参照者はWebブラウザークライアントから来ているため、独自の「PHP WWWクライアント」を作成する必要があります...基本的にはプロキシです。

ここにあるコードがあります。

<?php

// Setup Information
$host = "www.yoursite.com";
$page = "/index.html";

// Open the socket
$fp = fsockopen($host,80,$errno,$errstr,30) or die("Could not establish a connection. $errstr($errno)");

// Request the page
fputs($fp,"GET $page HTTP/1.0\r\n");
fputs($fp,"User-agent: PHP WWW Client\r\n");
fputs($fp,"Referer: http://www.anothersite.net\r\n");
fputs($fp,"\r\n");

// Read response
while (!feof($fp)) {
$page .= fgets ($fp,128);
}

// Close Socket
fclose($fp);

?>

$page これで、サーバーから受け取ったばかりのページのHTMLコンテンツが含まれます。

次にあなたがそれを行うことについては、それはあなた次第です:)あなたはおそらくあなたのドメインから動作するようにコード内のURLをフォーマットする必要があります。次に、HTMLコードを印刷します。

一般的にこれを行うことは本当に良いアイデアではありませんが、これは私が参照者とユーザーエージェントを「スプーフィング」することを知っている唯一の方法です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top