2012-12-11 1 views
0

예 : 나는 두 개의 도메인을 가지고리퍼러가 사용 중지 된 경우 자매 웹 사이트에서 오는 사용자를 검색하는 방법

http://www.computer.com 
http://www.computers.com 

http://www.computer.com 주요 웹 사이트이며 http://www.computers.com 메인 웹 사이트 (http://www.computer.com)로 리디렉션됩니다 단지 더미입니다.

순수 PHP를 사용하는 나의 목표는 google이나 다른 웹 사이트가 아닌 http://www.computers.com에서 사용자를 찾아 내거나 refer를 사용하지 않고 url을 직접 입력하는 것입니다.

두 사이트가 동일한 호스팅에 있지만 한 사이트의 파일 시스템에 다른 사이트에서 액세스 할 수 없습니다. $_SESSION 또는 $_COOKIE도 도메인 지정 변수입니다.

답변

1

가장 좋은 방법은 여러 수준에서 문제를 해결하는 것입니다. 먼저 www.computer.com이 www.computer.com의 IP 주소를 가리 키도록 DNS를 지정해야합니다. 이제 두 요청 모두 동일한 서버 또는 서버 클러스터 (로드 밸런서 뒤에있는 경우)에서 제공됩니다.

둘째, 단일 도메인을 사용하여 쿠키, 세션 등을 통합하기 위해 URL을 다시 작성하려는 경우 웹 서버 리디렉션 (예 : Apache의 경우 mod_rewrite)을 사용하여 모든 요청을 최종 도메인.

마지막으로 재 작성에서 스파이더 등이 영구적 인 리디렉션임을 확인하기 위해 재 작성시 301 코드를 보내야합니다.

+0

+1 좋은 전략! 우리가 알지 못하는 것은 OP가 자매 도메인 (예 : 자매 사이트에서 오는 트래픽의 양)에서 트래픽을보고/로그하려는 경우입니다. – nickhar

+0

@nickhar rewrite_log를 사용하여 발생하는 리다이렉션 또는 심지어 기본적인 Apache 로그 만 볼 수 있습니다. 'www.computer.com'을'www.computer.com? ref = computers.com'으로 리디렉션하는 재 작성 규칙을 수행하는 것이 매우 쉽거나 PHP 스크립트가 필요하다면 PHP 스크립트가 다르게 동작 할 수 있도록하는 것은 매우 쉽습니다. –

+0

예, 해당 사항도 해당됩니다. 업데이트 된 질문에서 알 수 있습니다! ;) – nickhar

3

리디렉션 스크립트를 www.computer.com?ref=sister 또는 유사한 URL로 설정 한 다음 적절하게 기록하고 원하는 경우 사용자에게 투명하게 유지하기 위해 다시 집으로 리디렉션 할 수 있습니다.

htaccess 예를 묻는 중입니까? 또는 그것을하는 방법에 다만 아이디어?

당신은 당신의 computers.com 인덱스 파일에서 순수 PHP를 말한다 :

<?php 
    header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.computer.com?ref=sister"); 
    ?> 
+0

나는 $ _GET –

+0

을 사용하고 싶지 않다. $ _SERVER [ 'HTTP_REFERER']로 간주되는 "refer"를 사용하지 않고 말하지 않았다. 많은 사람들이 추천을 확인하는 일반적인 방법이다. 그 싫어? 그런 다음 URI 세그먼트를 사용하십시오. "/"을 분해하고 첫 번째 세그먼트가 당신이 선택한 어떤 키이든 확인하십시오. 그거 맘에 안들니? 그런 다음 301에 htaccess를 사용하고 서버 로그를 확인하십시오. –

관련 문제