2013-03-11 3 views
3

은 내가 www.anothersite.com/site.php?id=999리디렉션하지만 숨기기 리퍼러

트릭은 리디렉션하려는 URL, www.mysite.com/go가 있다고 가정하자, 내가 요청이 내 사이트에서 나온 것을 볼 수 있도록 anothersite.com 싶지 않아요. com. www.anothersite.com/site.php?id=999이 주소 표시 줄에 수동으로 입력되었습니다.

Google 애널리틱스와 아무 관련이 없으며 어디서나 www.mysite.com/go에 대한 앵커 링크가 존재하지 않는다는 점에 유의해야합니다. 대신 사용자는 주소 표시 줄에 www.mysite.com/go를 수동으로 입력합니다 (긴 URL보다 쉽게 ​​기억할 수 있음).

어떻게 이루어 집니까? 문제의 기술은 PHP입니다. 나는 그것이 header() 기능으로 달성 될 수 있다고 상상하지만 구글 검색은 이것이 http가 아니라 https에서만 작동한다는 것을 밝혀냅니다. 리디렉션이 수행 될 때 클라이언트가 제공하는 referrel 정보를 PHP가 제어 할 수 있습니까? 주소 표시 줄에 주소가 입력 된 것처럼 보이게하려면 참조 자 정보를 비워 두어야합니다. 가능한가?

+0

(그래서 기존의 링크를 변경할 필요가 없습니다). PHP가 아닙니다. – Tchoupi

답변

3

HTTP 리디렉션으로는 불가능합니다. 브라우저가 전적으로 클라이언트 측에서 처리하므로 발신 참조 헤더를 제어 할 수 없습니다.

직접 제어 할 수있는 유일한 방법은 HTTPS를 사용하는 것입니다. HTTPS 페이지 값이있는 리퍼러는 브라우저에서 전달되지 않습니다.

예 흐름 :

  1. http://www.mysite.com/go

    의뢰 한 URL을 브라우저에 의해 제공됩니다
  2. https://www.mysite.com/go
  3. http://www.anothersite.com/site.php?id=999