2017-01-31 2 views
-1

여기에 거래가 있습니다 Google 검색 리퍼러에서 내 사이트로 방문자 만 받아 들여야합니다 URL 표시 줄에 "domain.com"을 입력하면 "domain.com" "일어나야합니다. 다른 사람이 나에게 PHP 코드를 보여줄 수 있습니까? 감사합니다.uniqe 리퍼러에서 방문자 수락

+1

다음 단계로 더 설명해 주시겠습니까? 정확히 무엇을 찾고 있습니까? –

+0

내 방문자는 직접 연결이 아닌 Google 검색에서만 제공됩니다. 따라서 브라우저에서 내 도메인을 입력하면 내 웹 사이트의 검색 결과로 리디렉션되어야합니다. 내가 index.php에 몇 가지 코드를 추가해야한다고 생각하지만, 무엇을 알지 못한다. 내가 분명했으면 좋겠어 – Joti

+0

[$ \ _ SERVER \ [ 'HTTP \ _REFERER'\]를 사용하여 사용자가 Google에서 왔는지 어떻게 알아낼 수 있습니까?] (http://stackoverflow.com/questions/10613025/how- can-i-use-serverhttp-referer-to-find-that-user-from-google) –

답변

0

언제든지 $_SERVER['HTTP_REFERER']을 확인하고 Google 검색 페이지가 아닌 경우 https://www.google.co.in/search?q=yourwebsite.com으로 리디렉션 할 수 있습니다. 그러나 이것은 Google 스팸 검색을 유발할 수 있으므로 효율적이지 않습니다. 나는 스팸 탐지에 대해 완전히 확신하지는 않지만, 내 의견으로는 더 나은 대안을 제안 할 수있다.

//say your website URL is example.com. Someone landed in example.com 
$url = $_SERVER['HTTP_REFERER']; 
$host = parse_url ($url, PHP_URL_HOST); 
if (strstr ($host, 'www.google.')) { 
//someone can still spoof this. If you need more restriction, you need to check all google regional domains explicitly. 
//https://en.wikipedia.org/wiki/List_of_Google_domains 
    header('Location: example.com/welcome'); 
} else{ 
    header('Location: example.com/redirect'); 
} 

이제 redirect 페이지에서 트릭을해야합니다. 양식을 자동으로 채우고 자바 스크립트를 사용하여 자동 제출하십시오.

<form id="myForm" action="https://www.google.com/search" method="get"> 
<input type="hidden" name="q" lang="en" value="example.com"> 
</form> 
<script type="text/javascript"> 
    document.getElementById('myForm').submit(); 
</script> 

이제 사용자는 Google 검색 결과 페이지로 이동하게되고 귀하의 웹 사이트가 물론 첫 번째 결과가됩니다.

+0

나는 그것을 시도합니다. 감사합니다. – Joti

+0

양식 메서드를 실수로'post '로 게시했지만'get'이어야합니다. 나는 두 번째 코드를 테스트했다. 잘 작동하고있다. –