02Feb XT Commerce: Session ID aus Google entfernen
Zum Betrieb des XT C Shops sind Session ID’s erforderlich. Was aber tun wenn nach der Installation die Option unter Konfiguration/Meta.tags “Spider Session vermeiden” nicht aktiviert wurde? Grundsätzlich sollte für den Shop die Google Webmaster Tools genutzt werden. Für die Erstellung einer Sitemap gibt es viele Tools. Bei Google findet man eine große Übersicht mit Links. Das wär schon mal der erste Schritt um Google alle Urls ohne Session ID’s mitzuteilen. Aber wie bekommt man nun die Urls die bereits im Cache sind wieder raus? Dazu ist in der Datei includes/application_top.php nach:
// include the language translations
require(DIR_WS_LANGUAGES . $language . '.php');
folgender Code einzufügen
if ( $spider_flag == true ){
if ( eregi(tep_session_name(), $_SERVER['REQUEST_URI']) ){
$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']), tep_get_all_get_params(array(tep_session_name())), ‘NONSSL’, false);
header(”HTTP/1.0 301 Moved Permanently”);
header(”Location: $location”); // redirect…bye bye
}
}
Damit wird eine 301 Weiterleitung auf die Url ohne Session ID erreicht. Nach und nach verschwinden dann aus dem Index die Urls mit den Session ID’s
Related posts:


September 3rd, 2009 at 12:20
..nun lieber Walter, welche Version ? Auch keine Ahnung. Bei “Enrico” tauchte das Problem erste mal auf. Vielleicht könnte “Mario vom Februar 27th, 2007″ uns da weiter helfen. Oder mal ansprechen auf seiner Hompage.
Ps: Hobbyläufer das ist gut, dann hast du ja Ausdauer..
September 7th, 2009 at 14:19
Ich würde mal sagen so:
if ( $truncate_session_id == true ) {
if ( eregi(xtc_session_name(), $_SERVER['REQUEST_URI']) ){
$location = xtc_href_link(basename($_SERVER['SCRIPT_NAME']), xtc_get_all_get_params(array(xtc_session_name())), ‘NONSSL’, false);
header(”HTTP/1.0 301 Moved Permanently”);
header(”Location: $location”);
}
}
September 26th, 2009 at 12:20
so weit so gut aber es gibt doch noch einen Fehler und zwar hier:
header(”HTTP/1.0 301 Moved Permanently”);
-> header(”Location: $location”); // redirect…bye bye
ES MUSS STEHEN:
header(’Location: $location’); // redirect…bye bye
Dann funktioniert es
FG
SEONord
September 26th, 2009 at 12:23
Hallo an Alle!
ES soll so stehen: einfach ” -> ‘ ersetzen in der 2 Zeile
header(”HTTP/1.0 301 Moved Permanently”);
header(’Location: $location’); // redirect…bye bye
Gruß
September 26th, 2009 at 12:25
Hallo an Alle!
ES soll so stehen: einfach ” -> ‘ ersetzen in der 2 Zeile
header(”HTTP/1.0 301 Moved Permanently”);
header(’Location: $location’); // redirect…bye bye
Gruß
September 28th, 2009 at 18:36
@Woro
Eigentlich umgekehrt, weil nähmlich singlequotes (’) von php _nicht_ geparst werden und dann wird es versucht auf $location (wörtlich, also _nicht_ als Variable!) anstatt auf http://www.site.de umzuleiten. Das Problem ist, dass in der Beschreibung Double Quotation Mark (“) benutzt wurden. Es sollen doublequotes (”) benutzt werden - dann funktioniert es. Also abschreiben und nicht copypasten.
Gruß
Anton
September 30th, 2009 at 19:39
@Anton
Wenn ich das so einrichte wie Du sagst, dann bekomme ich folgende Fehleremeldung:
Parse error: syntax error, unexpected ‘:’ in /homepages/0/d177891287/htdocs/xtcommerce/includes/application_top.php on line 423
Oktober 8th, 2009 at 18:36
Das Problem ist halt, das der Kommentar diesbezüglich durch einen Automatismus modifiziert wird, ich habe es richtig eingefügt.
Oktober 9th, 2009 at 17:20
@Woro
zeig mal =)