Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

?GoogleBot folgt Redirect via PHP nicht?

Alles zum Thema: Robots, Spider, Logfile-Auswertung und Reports
Neues Thema Antworten
chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 07.12.2006, 17:40

So langsam verstehe ich gar nichts mehr:

also,

hab eine Unterseite soundso.php?irgendwas=das&etc=blubb

PHP-Code in der Seite:

Code: Alles auswählen

<?php
if&#40;empty&#40;$_SERVER&#91;"QUERY_STRING"&#93;&#41;&#41;
&#123;
&#125;
elseif&#40;isset&#40;$_SERVER&#91;"QUERY_STRING"&#93;&#41;&#41;
&#123;
unset&#40;$_SERVER&#91;"QUERY_STRING"&#93;&#41;;
header&#40;"HTTP/1.1 301 Moved Permanently"&#41;;
header&#40;"Status&#58; 301 Moved Permanently"&#41;;
header&#40;"Location&#58;http&#58;//seite.tld/Unterverzeichnis/soundso.php"&#41;;
&#125;
?>
Bei normalen Aufruf der Seite:

soundso.php?irgendwas=das&etc=blubb

werde ich auf soundso.php geleitet, web-sniffer behauptet das auch.

Nun zeigt mir aber CrawlTrack an, dass der GoogleBot die Seiten

soundso.php?irgendwas=das&etc=blubb

einliest, obwohl der Server über PHP Redirect diese Seiten doch gar nicht ausliefern dürfte. Und mit PHP als Serverskriptsprache sollte dies doch geschehen, bevor auf die Inhalte der Seiten (in der sich dann auch der Code des Crawltrack befindet) aufruft.

Verstehe es echt gerade nicht.

Weiß da jemand Rat?

PS: die URLs mit Querystring sind bei Google draußen. Wenigstens etwas.

Anzeige von ABAKUS

von Anzeige von ABAKUS »

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

Jetzt anfragen: 0511 / 300325-0.


Monk
PostRank 2
PostRank 2
Beiträge: 44
Registriert: 23.08.2006, 09:59
Wohnort: bei Frankfurt/Main

Beitrag von Monk » 08.12.2006, 09:57

Guck mal nach, ob da nicht doch ein Code 301 bei den Aufrufen im Log erscheint - und gleich nachher einer der Zielseite mit Code 200.

Sicherheitshalber würde ich auch ein Leerzeichen hinter "Location: " setzen und UNBEDINGT ein exit() hinter den letzten header().

Kannst übrigens das unset() getrost sparen und das ganze etwas einfacher in "if(!empty...)" ausführen.

chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 08.12.2006, 11:15

Monk hat geschrieben: und UNBEDINGT ein exit() hinter den letzten header()
Upps, das könnte es gewesen sein, würde zumindest mein logisches Problem klären, warum der GoogleBot überhaupt noch an Infos rankommt, die nach der Anweisung stehen.

Vielen Dank, Monk. Werde berichten, ob das weiterhilft.

So, seit Einbau von exit(); werden die URLs mit Querystring nicht mehr aufgerufen.

Fazit: manchmal sollte man auch bei https://de.php.net/header vorbeischauen:
de.php.net/header hat geschrieben: /* Stellen Sie sicher, dass der nachfolgende Code nicht ausgefuehrt wird, wenn
eine Umleitung stattfindet. */
exit;
Besten Dank, Monk, hast mich auf die richtige Fährte geführt.

SloMo
PostRank 10
PostRank 10
Beiträge: 4880
Registriert: 04.01.2005, 18:26

Beitrag von SloMo » 11.12.2006, 09:42

Ich bevorzuge die(), das ist irgendwie kewler... hey Skript, stirb! :)

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag