Session-ID elegant abschneiden

August 29th, 2007 12:09 Uhr von Ronald

Aus SEO-Gründen sollte man ja immer versuchen, die Session-ID (unter Verwendung von PHP i.d.R. PHPSESSID) abzuschneiden, damit kein Duplicate Content entsteht. Dafür gibt es mit PHP (aber natürlich auch mit vielen anderen Mitteln) eine einfach Möglichkeit: Man startet die Session erst gar nicht, wenn es sich um einen Bot handelt.

Diese Sache hat aber natürlich einen Haken. Sehr oft brauch man aber die Session, z.B. um die Sprache der aktuellen Seite zu speichern, wenn intern Sprachdateien geladen werden oder für diverse andere Zwecke. Aus diesem Grund musste ich mir etwas anderes einfallen lassen.

Ich habe die Sache dann (hoffentlich elegant) erledigt:

function isBot() {
   // Erkennen ob es ein Bot ist, z.B. mit Auswertung von $_SERVER['HTTP_USER_AGENT']
   if(true === xyz()) {
      return true;
   }

   return false;
}

if(true === isBot()) {
        ini_set(“url_rewriter.tags”, “”);
}

Dadurch wird die Session zwar gestartet, aber an die Links der Seite, wird keine Session-ID mehr angehängt.
Um nun ganz zu vermeiden, dass Suchmaschinen noch auf (alte) URLs mit Session-ID zugreifen, kann man sie mit entsprechenden mod_rewrite-Regeln oder robots.txt-Anweisungen fernhalten.

Mit der robots.txt z.B. so *:

User-agent: Googlebot
Disallow: /*PHPSESSID=

* Ob Suchmaschinen in den URLs das Sternchen als Wildcard erlauben ist wohl noch nicht so eindeutig geklärt. Angeblich sollen Googlebot und Yahoo! Slurp es können. Ich übernehme da keine Garantie. ;-)

Teile und genieße Diese Icons verzweigen auf soziale Netzwerke bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • Digg
  • del.icio.us
  • Netvouz
  • DZone
  • ThisNext
  • MisterWong
  • Wists

Geschrieben in PHP, SEO | Keine Kommentare »

Einen Kommentar abgeben

Bitte beachte: Die Kommentare werden moderiert. Dies kann zu Verzögerungen bei Deinem Kommentar führen. Es besteht kein Grund den Kommentar erneut abzuschicken.

*
To prove you're a person (not a spam script), type the answer to the math equation shown in the picture. Click on the picture to hear an audio file of the equation.
Click to hear an audio file of the anti-spam equation