it-swarm.com.de

Wie halte ich mich mit PHP an die First Click Policy von Google?

Ich habe meine Website vor kurzem mit einem Passwort geschützt und die Benutzer dazu aufgefordert, sich anzumelden oder zu registrieren, um den Inhalt anzuzeigen und in den Foren zu posten. Dabei hat Google die meisten meiner Seiten aus den Google-Suchergebnissen entfernt , da GoogleBot sie aufgrund des Passwortschutzes nicht mehr indizieren konnte. Das bedeutet, dass Google nicht mehr auf meine Website zugreifen kann, obwohl sie wirklich relevante Informationen enthält.

Ich habe die First Click Policy von Google recherchiert, was für meine Website als praktikable Option erscheint. Grundsätzlich heißt es:

... wir crawlen und indizieren Ihre Website in dem Umfang, in dem Sie Googlebot den Zugriff darauf gewähren. Um die bestmögliche Nutzererfahrung zu bieten und mehr Nutzern zu helfen, Ihre Inhalte zu entdecken, empfehlen wir Ihnen, First Click Free zu testen. Wenn Sie es vorziehen, den Zugriff auf Ihre Website nur auf Abonnenten zu beschränken, respektieren wir Ihre Entscheidung und zeigen ein "Abonnement" -Label neben Ihren Links an.

In diesem Artikel gibt Google auch einige Richtlinien für die Implementierung dieser Richtlinie an:

Um First Click Free zu implementieren, müssen Sie allen Nutzern, die Ihre Seite über die Google-Suche finden, gestatten, den vollständigen Text des Dokuments anzuzeigen, das der Nutzer in den Suchergebnissen von Google gefunden hat, und den Crawler von Google im Web zu finden, ohne dass sie sich registrieren oder abonnieren müssen Sehen Sie diesen Inhalt. Der erste Klick des Benutzers auf Ihren Inhalt ist kostenlos und erfordert keine Anmeldung. Sie können den Benutzer jedoch mit einer Anmelde- oder Zahlungs- oder Registrierungsanforderung blockieren, wenn er versucht, von dieser Seite auf einen anderen Abschnitt Ihrer Inhaltssite zu klicken.

Ich möchte meine Website nicht für die öffentliche Wiedergabe öffnen , aber wie kann ich meine Website von Google erneut indizieren lassen, ohne dass der Inhaltsschutz beeinträchtigt wird? und benötigte Mitgliedschaft? Welche Schritte sollten durch PHP unternommen werden , um sicherzustellen, dass GoogleBot den Inhalt meiner Website lesen und indizieren kann, während Nutzer nur den Artikel von Google sehen dürfen verweist sie auf.

3
pattyd

Wie in der Frage angegeben, besteht die beste Option für diese Art von Problem darin, GoogleBot die Indizierung der Website zu ermöglichen, die Anzeige regulärer Benutzer jedoch einzuschränken.

Dazu müssen Sie in der Lage sein, zwischen drei Arten von Zuschauern zu unterscheiden:

  • GoogleBot
  • Ein Besucher wird verwiesen über die Google-Suche (wie in der First Click-Richtlinie angegeben)
  • Ein direkter Besucher, der entweder von einer anderen Website als Google oder ohne Referrer verwiesen wird

Um zwischen diesen drei Typen zu unterscheiden, müssen Sie eine Reihe von zwei Überprüfungen durchführen, eine durch HTTP_USER_AGENT und eine andere durch HTTP_REFERER.

  • Ermitteln Sie mithilfe von $_SERVER['HTTP_USER_AGENT'], ob GoogleBot auf die Website zugreift. Wenn dies zutrifft, erlauben Sie GoogleBot den Zugriff darauf, ohne dass ein Login erforderlich ist.
  • Auf ähnliche Weise können Sie mit $_SERVER['HTTP_REFERER'] feststellen, woher der Benutzer kam. Wenn der Benutzer von einer anderen Site verwiesen wurde, enthält diese Variable eine Zeichenfolge, die die URL dieser Site enthält. Wenn diese Variable https://www.google.com enthält, sollten Sie dem Betrachter den Zugriff auf die Site erlauben.
  • Wenn der Betrachter nicht GoogleBot ist und nicht von Google weitergeleitet wurde, sollten Sie ihn zum Anmelden zwingen. Dadurch wird sichergestellt, dass er sich auch dann anmelden muss, wenn er von Google auf Ihre Website gebracht wurde Sie stammen einfach von einer anderen Website als Google und müssen sich auch anmelden.

Hier ist ein Teil des Codes, der diese grundlegenden Überprüfungen ausführt

    //check if the viewer is googlebot, if so, allow
    if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot"))
    {
       //allow access
    }

    //check if the viewer was referred by google, if so, allow
    elseif(strstr(strtolower($_SERVER['HTTP_REFERER']), "https://www.google.com"))
    {
      //allow access
    }

    //if the viewer isn't from google, block vistor viewing
    else{
      //redirect to login
    }

Für Nachrichtenseiten ist es wichtig zu beachten, dass Google jetzt 3 kostenlose Artikel pro Tag benötigt, wenn die First Click-Richtlinie eingehalten wird.

Es ist möglich, die Anzahl der kostenlosen Artikel zu begrenzen, auf die ein Google News-Leser über First Click Free zugreifen kann. Ein Nutzer, der von einem Host kommt, der mit [www.google.] oder [news.google.] übereinstimmt, muss in der Lage sein, mindestens 3 Artikel pro Tag zu sehen. Diese Vorgehensweise wird als "Messen" des Nutzers bezeichnet: Wenn der Nutzer in Google News auf zu viele Artikel eines Publishers geklickt hat, ist das Messgerät für frei zugängliche Artikel auf dieser Website erschöpft.

Es ist auch äußerst wichtig zu beachten, dass es sehr einfach ist, einen HTTP_USER_AGENT "zu fälschen". Es gibt zahlreiche Browser-Plugins und -Anwendungen, mit denen ein Betrachter einen Benutzeragenten haben kann, der vorgibt, GoogleBot zu sein. Auf diese Weise kann ein Spoofer jede durchsuchbare und indizierbare Seite auf der Site anzeigen, unabhängig von ihrem Mitgliedschaftsstatus. Sekundäre Schritte, um sicherzustellen, dass es sich wirklich um den echten GoogleBot handelt, sind möglicherweise erforderlich, aber eine grundlegende Überprüfung wie diese sollte in vielen Fällen funktionieren.

4
pattyd