2012-03-08 4 views
4

편의를 위해 내 CMS가 다른 사이트에 링크되어 있으며 다른 사이트에서 내 CMS의 쿼리 문자열과 문자열을 볼 수 없도록 리퍼러를 숨기고 싶습니다. 이제는 CMS가 PHP 파일에 연결되어 있습니다. 서버에서 차례로 header()를 통해 링크로 리디렉션되는 내 서버에서 리퍼러는 PHP 링크가 아닌 CMS에서 가져옵니다. 또한 ...PHP : header()로 리퍼러 변경하기

header("Referer: nowhere"); 
header("Location: $_REQUEST[urltolinkto]"); 

... 아무 것도 변경되지 않습니다. 리퍼러로서 무엇을 넣었는지간에 항상 사용자가 실제로 링크를 클릭 한 CMS의 것입니다.

리퍼러를 (PHP 연결으로) 변경하거나 자바 스크립트 또는 메타 새로 고침을 사용해야합니까?

+0

가능한 복제본 http://stackoverflow.com/questions/6428762/hide-referrer-on-click – MrCode

답변

8

Referer 헤더는 브라우저가 서버에 보내는 내용입니다. 서버에서 브라우저로 respose를 변경하므로 쿠키 헤더와 달리 이러한 방식으로 작동하지 않습니다. 내가 아는 한 Referer를 전송할 때 브라우저의 동작에 대한 서버 측 제어가 없습니다.

0

브라우저는 보내려는 리퍼러를 선택하지만 주위에는 방법이 있습니다.

HTML5 메타 리퍼러를 추가하면 대부분의 최신 브라우저에서이를 존중합니다.

<meta name="referrer" content="no-referrer"> 

을 사이트 헤드에 추가하기 만하면됩니다.

리디렉션 서비스 및 심판을 숨기기위한 다른 해킹 (https 리디렉션, iframe tricks 등)이 있습니다.