문제

링크로 리디렉션하는 스크립트가 있습니다.

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

그러나 나는 그것을 설정하고 싶다 HTTP_REFERRER 되려고 http://foo.com 또는 blank 사이트가되었습니다 http://foo.com 스크립트가 설치된 다른 도메인에서 참조가 전송되었음을 추적 할 수 없습니다.

도움이 되었습니까?

해결책

물론 참조자를 스푸핑하는 방법이 있습니다. 얼마나 유용 할 것인가가 당신이 결정하는 것입니다 :)

참조자는 웹 브라우저 클라이언트에서 제공되므로 자신의 "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