Seite 1 von 1

PHPSESSID=xxx verhindern

Verfasst: 31.01.2007, 21:08
von scream479
Hallo erstmal,

Ich hoffe hier jemanden zu finden der mir helfen kann.

Ich hab gerade festgestellt, dass sich einige meiner URL´s in Google
mit angehängter PHPSESSID finden, was natürlich nicht sein sollte.

Beispiel:
www.meinedomain.at/details/7695?PHPSESS ... a1d50e3d91

Es dürfte anscheinend nur bei mittels ForceType manipulierten Dateien
auftreten (jedoch auch nur bei einigen wenigen)

Code: Alles auswählen

<Files details> 
ForceType application/x-httpd-php 
</Files>
Frage 1: Wie kann ich dies für die Zukunft verhindern?
Frage 2: Wie bekomme ich diese URL´s wieder aus dem Index?

Über Hilfe wäre ich sehr dankbar!

Großes Danke schon mal im Voraus!

Liebe Grüße,
Max

Verfasst:
von

Verfasst: 31.01.2007, 21:37
von Gast

Code: Alles auswählen

ini_set&#40;"session.use_trans_sid", "0"&#41;; // schaltet die SID übergabe per GET Parameter AUS
Ganz oben in die index.php. Die verschwinden von alleine wenn Google Deine Seiten regelmässig crawlt - netter ist aber eine Weiterleitung. Meine Lieblingsseite zu diesem Thema: Frozenminds

Verfasst: 31.01.2007, 21:52
von scream479
Vielen Dank!!!

Scheint prima zu funken :-)

lg,
Max

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Ergänzung

Verfasst: 31.01.2007, 22:03
von goldi
Falls die oben genannte Anweisung nicht funktioniert, kann man folgende weitergehende Einstellung in PHP benutzen:

Code: Alles auswählen

ini_set&#40;'url_rewriter.tags', ''&#41;;
Man sollte auch dafür sorgen, dass die mit PHPSESSID versehenen URLs aus dem Google-Index verschwinden, da sonst eine Abwertung droht ("Duplicate Content"). Dies kann man durch eine Umleitung auf die URL ohne PHPSESSID erreichen, indem man folgende Zeilen in der .htaccess ergänzt:

Code: Alles auswählen

RewriteEngine On 
RewriteCond %&#123;QUERY_STRING&#125; PHPSESSID
RewriteRule ^&#40;.*&#41;$ $1? &#91;L,R=301&#93;

Verfasst: 31.01.2007, 22:18
von scream479

Code: Alles auswählen

RewriteEngine On 
RewriteCond %&#123;QUERY_STRING&#125; PHPSESSID 
RewriteRule ^&#40;.*&#41;$ $1? &#91;L,R=301&#93; 
funkt bei mir nicht.

Hier erfolgt in meinem Fall eine Weiterleitung auf:
https://www.meinedomain.at/kunden/12345 ... aftung.php

anstelle von:
https://www.meinedomain.at/haftung.php

Was funktioniert (ich jedoch auf jede Seite einbauen muss :o ) ist:

Code: Alles auswählen

<?
//Determine current URL
$URL = 'http&#58;//'.$_SERVER&#91;'HTTP_HOST'&#93;.$_SERVER&#91;'REQUEST_URI'&#93;;
 
//Check if PHP is not in safe mode,
//and PHPSESSID is passed via URL
if &#40;!ini_get &#40;'safe_mode'&#41; && preg_match &#40;'/'.session_name&#40;&#41;.'=&#40;&#91;^=&\s&#93;*&#41;/i', $URL&#41;&#41;
&#123;
   //Remove PHPSESSID junk and unneeded characters &#40;"&" or "?"&#41; at end of URL
   $URL = preg_replace &#40; array &#40;'`'.session_name&#40;&#41;.'=&#40;&#91;^=&\s&#93;*&#41;`', '`&#40;&|\?&#41;+$`'&#41;, '', $URL&#41;;
   //Send Moved Permanently header
   @ header &#40;"HTTP/1.1 301 Moved Permanently"&#41;;
   //Redirect to clean URL
   @ header &#40;"Location&#58; " . trim &#40;$URL&#41;&#41;;
   //End current script
   exit&#40;&#41;;
&#125;
?>
Die htaccess Lösung wäre somit schon um einiges einfacher, sofern man sie zum funken bringt.

Vielen Dank für Eure Hilfe!

lg,
Max

Verfasst: 31.01.2007, 22:48
von Gast
Doppelter Content auf ein- und derselben Seite ist irrelevant, Google kümmert sich darum nicht.

cache löschen

Verfasst: 01.02.2007, 16:21
von siemic
hallo regine - deine meinung zum doppelten content kann ich nicht teilen. meiner erfahrung nach werden seiten mit "ähnlichem" inhalt ignoriert. da muß schon eine änderung erkennbar sein. - oder meinst du etwa ein und dieselbe content seite?

zu 2.: die löschung aus dem index kann man bei google selbst beantragen- siehe hier: https://www.google.de/intl/de/remove.html

ps: Session id für Spider killen...

<?php
if ( ! stristr($_SERVER['HTTP_USER_AGENT'], 'Googlebot')
|| !stristr($_SERVER['HTTP_USER_AGENT'], 'slurp/cat')
):
session_name('s');
session_start();
endif;
?>
wenn man andere bots mit ausklammern will sollte man das am besten über eine variable regeln

Verfasst: 23.11.2007, 22:55
von satriani1234
bzgl. des dc auf gleicher domain bin ich der selben meinung wie der gast. denn ich denke google hat dieses problem schon längst erkannt und verifiziert dieses prob nicht mehr als dc.