php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Google und die Session als Get Parameter


 
martinm79
10-09-2006, 13:41 
 
Ich bin mit einer Seite bei Google gelistet, aber es ist nur die Index bei Google gespeichert. Wenn ich im Cache von Google gucke, sehe ich das an den Links die SESSION automatisch rangehängt wurde. Kann ich das irgendwie verhindern, ohne Sessions auszuschalten?

Und wenn ich eine Sitemap habe, wie teile ich sie Google mit, wo sie liegt?
:dontknow:

 
pekka
10-09-2006, 17:49 
 
Original geschrieben von martinm79
Und wenn ich eine Sitemap habe, wie teile ich sie Google mit, wo sie liegt?
:dontknow:


https://www.google.com/webmasters/sitemaps/docs/de/about.html

 
TobiaZ
11-09-2006, 22:06 
 
Wenn ich im Cache von Google gucke, sehe ich das an den Links die SESSION automatisch rangehängt wurde. Kann ich das irgendwie verhindern, ohne Sessions auszuschalten?

Ja. SessionIDs nur via Cookies übergeben. Dann kommen die auch nicht in die URL.

ansonsten halt (gezielt) abschalten.

 
Matzelein
12-09-2006, 22:31 
 
Hi,

ich habe es bei mir so gelöst, dass ich die SIDs in Cookies speichere, klappt das nicht, wird die SID, sofern es sich um einen registrierten Benutzer handelt, an die URLs angeheängt. Gäste bekommen keine SID über die URL. Wenn Cookies deaktiviert sind, dann bekommen bei mir Gäste pro Seitenaufruf eben eine neue SID, so schlimm ist das (bei mir) auch nicht.

Hängst du die SID bei Gästen auch an die URL, dann hilft es, denke ich, nur, den User-Agent zu berücksichtigen. Das könnte für Google so aussehen (für Yahoo & Co analog):

if (strpos(strtolower($_SERVER['HTTP_REFERER']), 'googlebot') === false)
{
// sid anhängen
}

Anscheinend soll $_SERVER['HTTP_REFERER'] nicht immer funktionieren, doch ich habe bisher bei hunderten Besuchern nie Probleme gehabt. Ansonsten musst du dir eben eine kleine Funktion dafür schreiben.

 
Matzelein
12-09-2006, 22:58 
 
Ich kann meinen Beitrag irgendwie nicht bearbeiten.
Es sollte natürlich $_SERVER['HTTP_USER_AGENT'] und nicht $_SERVER['HTTP_REFERER'] heißen.

 
TobiaZ
14-09-2006, 11:49 
 
warum startest du bei gästen überhaupt eine session??

 
martinm79
02-10-2006, 00:17 
 
// Damit & in den $_GET Parameter übersetzt wird.
ini_set( 'arg_separator.output' , '&' );
ini_set( 'url_rewriter.tags' , 'a=href,area=href,frame=src,input=src,form=,fieldset=,link=href' );

// Wenn Google kommt, dann keine SESSION starten.
$host = gethostbyaddr(getenv("REMOTE_ADDR"));

$suchfaktor = "googlebot";

if (!strchr($host,$suchfaktor))
{
session_start();
}


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:48 Uhr.