문제

저는 파트너를 추적하는 제3자 웹사이트를 통해 파트너와 연결되는 회사에서 일하고 있습니다.예를 들어 우리 사이트에는 다음과 같은 외부 링크가 있을 것입니다(내 작업을 보호하기 위해 이름이 변경됨).

<a href="link.php?link=chuckecheese">check it out kids!</a>

link.php에 들어가면 내가 거기에 링크를 정의한 것을 볼 수 있습니다:

$outlink['chuckecheese'] = "http://partners.linktrackingisprettycool.com/x/212/CD1/$STAMP";

$STAMP는 타임스탬프이며 크리스마스 정오를 나타내는 "12-25-09-1200"으로 대체됩니다.

사용자가 이 링크를 클릭하면 www.chuckecheese.com으로 이동합니다.

이 모든 것이 잘 작동하지만 SEO 목적에는 그다지 좋지 않습니다.검색 엔진이 이를 chuckecheese.com에 대한 링크로 볼 수 있도록 만들고 싶습니다. 이는 파트너의 페이지 순위에 도움이 되고 더욱 정직합니다.

.htaccess에서 다시 쓰기 규칙을 만들려고 하는데 혼란스럽고 정확히 어떻게 수행되었는지 모르겠습니다.나는 시도했다:

RewriteRule http://www.chuckecheese.com$ link.php?link=chuckecheese$ [QSA]

그러나 이것은 작동하지 않는 것 같습니다.다음에는 무엇을 시도해야 합니까?

도움을 주셔서 미리 감사드립니다.여기 있는 여러분은 항상 훌륭하고 스택 오버플로의 좋은 사람들이 제가 계속 고용되도록 하는 역할에 감사드립니다.

도움이 되었습니까?

해결책

이를 위해 사용자를 리디렉션하기 위해 다시 쓰기 규칙을 사용할 수 없습니다.요청은 웹서버에서 처리된 것이어야 합니다.

이를 달성하기 위해 자바스크립트를 사용해 볼 수도 있습니다.따라서 href는 chuckecheese에 대한 것이지만 클릭하면 document.location을 실제로 원하는 것으로 변경합니다.

현상금에 대한 질문 수정됨

당신이 할 수 있는 일은 브라우저의 사용자 에이전트를 기반으로 링크를 사전 처리하는 것입니다.따라서 사용자 에이전트가 googlebot(아래 문자열 중 하나)인 경우 다음의 실제 URL을 표시합니다. http://www.chuckecheese.com.

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Googlebot/2.1 (+http://www.googlebot.com/bot.html)
Googlebot/2.1 (+http://www.google.com/bot.html)

URL이 googlebot이 아닌 경우 트래픽 분석을 수행하는 링크를 표시합니다.

다음 URL에서 사용자 에이전트 목록을 찾을 수 있습니다.

googlebot이 올바른 사용자 에이전트를 표시하지 않는 경우(또는 향후 변경되는 경우) Google에서는 IP 주소를 역방향으로 조회할 것을 권장합니다.이는 작은 성능 저하가 될 것입니다.

역방향 DNS 조회를 사용하여 이름이 googlebot.com 도메인에 있는지 확인한 다음 해당 googlebot 이름을 사용하여 순방향 DNS 조회를 수행하여 서버에 액세스하는 봇이 실제로 Googlebot인지 확인할 수 있습니다.이는 스팸 발송자나 기타 말썽꾸러기들이 Googlebot이라고 주장하면서 귀하의 사이트에 액세스하는 것이 우려되는 경우에 유용합니다.-Google

추가 설명을 위해 편집됨PHP를 사용한다고 가정하면 런타임에 링크가 생성됩니다.다음은 제가 작성한 일부 코드입니다.

function getRealURL($url)
{
    // adjust this regex to match the pattern of your traffic analysis urls
    ereg("link=(.+)$",$url,$matches);
    if ($matches[1])
    {
        // adjust this so the urls come out correctly
        return "http://www.".$matches[1].".com";
    }
    else 
    {
        return $url;
    }
}
function isGoogle()
{
    switch ($_SERVER['HTTP_USER_AGENT'])
    {
        case 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)':
        case 'Googlebot/2.1 (+http://www.googlebot.com/bot.html)':
        case 'Googlebot/2.1 (+http://www.google.com/bot.html)':
            return true;
        default:
            return false;
    }       
}
function showlink($url)
{
    $trafficAnalysisUrl = getRealURL($url);

    if (isGoogle())
    {
        return $url;
    }
    else
    {
        return $trafficAnalysisUrl;
    }
}


<html>
...
Come eat pizza at <a href='<?=showLink("link.php?link=chuckecheese")?>'>chuck e cheese!</a>
...
</html>

두 링크가 모두 같은 위치로 이동하기 때문에 Google이 이와 같은 것에 관심을 가질 것 같지 않습니다.하지만 TOS를 확인하여 확인하세요.http://www.google.com/accounts/TOS

다른 팁

당신의 가정은 좋지 않습니다. 당신은 말합니다 :

검색 엔진이 Chuckecheese.com에 대한 링크로 볼 수 있도록 만들고 싶습니다. 사람들이 chuck e 치즈를 검색 할 때 우리의 점수를 얻는 데 도움이됩니다.

이것이 SEO 현명한 도움이된다면, 모든 신체는 SEO PageRank를 얻기 위해 모든 훌륭한 사이트를 스팸으로 연결하고 게임이 너무 쉬울 것입니다. 링크의 수혜자는 발신자가 아닌 수신자 페이지/사이트입니다.

Hey PG ... 다른 웹 사이트에 링크하는 것은 수천 개의 다른 사이트에 광고에 광고가 표시되는 것처럼 더 이상 PageRank를 제공하지 않습니다. 그리고 네, 당신의 파트너는 당신이 그들과 연결되도록 혜택을 받고 있습니다. 그리고 당신이 개방적으로 말하면 얻을 수있는 이점은 어떻습니까? 당신이 쓴 내용에 대한 나의 이해에서, 그것은 또 다른 멋진 리디렉션 일뿐입니다. 구글은 그것을 알고 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top