Page 1 of 2

Problem Google sitemap 404 Not Found

Posted: Mon 17. Dec 2007, 16:07
by Didl
Hallo,
ich habe ein Problem mit der indexierung einer CMS Site 1.3.3. Ich bekomme stets die Fehlermeldung im Validator

Code: Select all

404 Not Found 
I got the following unexpected response when trying to retrieve
Site kann nicht gechecked werden.

Aus diesem Grund kann ich wohl auch keine google Sitemap mit einem Online-Mapgenerator erstellen, da kein Zugriff.
Die Startseite der TLD - oberste Ebene - verfügt über keinen Inhalt in Form von CP's. Alles ist im Start-Template eingebunden.
Erst die Seiten der folgenden Ebene sind dann mit CP's versehen und die geben auch keinerlei Fehlermeldungen aus.
Kann ich das irgendwie umgehen, zusätzlichen Code eingeben oder was in der htaccess anfügen?
Andere Projekte laufen noch unter Vers. 1.2.8, da gibt es keine Probleme, allerdings gibt es da auch Content in der obersten Ebene und nicht nur im Template.
Habe schon gesucht, auch ein bisl gefunden aber wie kann ich es umgehen?

Posted: Wed 19. Dec 2007, 16:41
by Uwe367
Also ich habe die sitemap.php, die in phpwcms integriert ist, bei Google Sitemaps angegeben und sie wurde ohne Probleme übernommen.

Posted: Wed 19. Dec 2007, 16:58
by update
Die Startseite der TLD - oberste Ebene - verfügt über keinen Inhalt in Form von CP's
Das kommt von das: da ist ja tatsächlich kein Inhalt!

Versuche mal, folgendes zu validieren: eine Site anlegen mit ein paar Kategorien und Unterkategorien. In eine einzige packst Du einen Artikel sowie einen direkt unter "home", in alle anderen nichts
Was passiert: die Seite kann validiert werden (home kann angefahren werden), ist aber voll mit "broken links"

Also: nur da, wo auch Inhalt ist, gibt's kein 404 (da hilft auch nicht, im Template das Error-Feld zu füllen - das gilt nur intern....)

PS: da habe ich selber ein paar Stunden für gebraucht, um dadadadahinterzukommen :wink:
PPS: von home eine Weiterleitung oder so auf eine Seite mit Inhalt wirkt da schon Wunder...

Posted: Wed 19. Dec 2007, 17:19
by Didl
Ja, aber es geht um die oberste Ebene und die Tatsache, dass der Validator besagte 404 Fehlermeldung der TLD zurückgibt. Er kann nicht crawlen. Es scheint was zu fehlen.
Dies muss mit fehlendem CP in der Startebene zusammenhängen. Ich will aber keinen Content in dieser Ebene, da der Inhalt über die Vorlage erstellt wird.

Posted: Wed 19. Dec 2007, 17:28
by update
Na dann...

Posted: Wed 19. Dec 2007, 22:03
by Jensensen
[x]

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 00:28
by Skipy
Hi, hab eine ganz ähnliche Fragestellung - darum poste ich hier mal dazu :-)

Ich hab festgestellt dass Google ganz viele falsche (alte) Links von mir noch gespeichert hat. Und wenn man diese anklickt, kommt man eben nicht auf eine 404 Seite, sondern auf die PHPWCMS-Error Seite (wo man seinen Text unter Vorlagen eingeben kann ...). So jetzt hat Google aber seeeeehr viele dieser eigentlich kaputten Links in seinem Chache und meint das wären "funktionierende Seiten". Ich will aber nicht dass jeder der nach meiner Homepage bei Google sucht, auf diese Menge von Fehlerseiten stößt und 1000 Mal lesen muss: "Tut mir leid, es ist wohl ein Fehler aufgetreten ...." ;-)

Was kann ich tun, dass Google merkt, dass diese Seite wirklich nicht existiert? Also quasi, wie mache ich einen redirect auf ne 404 Seite? :-)

Danke für eure Hilfe :-)

Gruß,
Stivi

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 10:43
by Cipolla
Hallo Stivi,

wenn du bei google die sitemap wie von jens beschrieben anmeldest sollten die "alten" links bei google rausfliegen. Ich habe erst vor kurzem eine statische seite, die bereits einige jahre lief und entsprechend bei google indexiert war auf phpwcms umgestellt. Nach einrichtung der sitempa dauerte es nicht mal einen tag und die seite war neu indexiert. google bietet da ja auch eine menge hilfe zur analyse an.

Um zu verhindern, das ggfs doch noch alte links bei google aber vor allem bei anderen suchmaschinen und ggfs. bookmarks von usern ins nirvana führen habe ich per htaccess noch eine 404 umleitung auf eine spezielle fehler/info-seite innerhalb des cms erstellt.

D.h. es taucht nicht die standardfehlermeldung auf, die man im template angelegt hat, sondern es wird auf einen versteckten artikel umgeleitet wo entsprechend darauf hingewiesen wird, das die links veraltet sind, man die interne suche benutzen soll, oder zur startseite gehen soll.

ich kann nicht verstehen warum so viele leute sooo viel wert auf die google indexierung legen aber sich nicht um andere suchmaschinen oder metacrawler kümmern. klar, google deckt schonmal 80% aller anfragen ab, aber für die restllichen 20% sollte man zumindest eine eigene 404 seite erstellen, da je nach provider ggfs. nur die standard "seite nicht gefunden" meldung erscheint.

[EDIT]
Achso, in die htaccsess muss das für die umleitung rein:

Code: Select all

ErrorDocument 404 http://www.deinedomain/index.php?MeineFehlerSeite
[/EDIT]

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 13:00
by juergen
und genau das besanstandet Stivi.. er will den Status 404, so bekommt er aber 200 und die Seite bleibt im index.. so gesehen müsste man das error dokunment weiterleiten auf ein 404 Status..

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 13:42
by Skipy
Danke DF6IH, du hast das Problem verstanden :-) *puh* ;-)

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 16:50
by Cipolla
Ja ist ja gut, mein server spuckt halt eine einwandfreie 404 aus, somit bestand das problem bei mir nicht.

Hier gibt es eine Hilfestellung per header einen 404 an google auszuspucken:

http://www.fob-marketing.de/marketing-b ... ellen.html

Gruß

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 17:31
by juergen
Skipy,

du kannst aber keinen header redirect ´machen, weil im Zustand des Seitenaufbaus über die Fehlerseite geht das nicht mehr. Musst du mal Oliver fragen, wie man das abfangen kann.

@Cipolla, ja das ist fein. Aber Zugriffe auf die index.php werden immer innerhalb phpwcms behandelt, auch wenn es den eigentlichen Alias nicht (mehr) gibt. Das hat übrigens auch viiiele Vorteile, wenn ein Client auf der Seite bleibt.

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 18:21
by Cipolla
Also so ganz habe ich es noch nicht geschnallt.

wenn ich in der htaccess für fehler 404 eine umeitung auf sagen wir mal 404.php im root mache und eben in dieser 404.php

Code: Select all

<?php header("HTTP/1.1 404"); ?>
reinsetze dann erhält google zumindest bei meinem test eine einwandfreie 404.

In der 404.php kann ich ja dann noch reinsetzen was ich möchte z.b. links zum cms / suche etc. um den user zu informieren.

Möglicherweise bin ich auch vollkommen auf dem falschen weg, dann vergesst es einfach.

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 18:51
by Skipy
Hi,
reinsetze dann erhält google zumindest bei meinem test eine einwandfreie 404.
ja das ist richtig, aber nur solange Google eine Seite aufruft die nicht /index.php?was-auch-immer heißt.
Sobald aber index.php mit drinnen steckt, greift phpwcms ein und versucht die Seite zu finden. Kann er Sie nicht finden, gibt er die PHPWCMS-Fehlerseite aus. (Was ich ja verhindern will, da Google denkt dass dies eine reguläre Seite ist die er Indizieren muss - und dann indiziert er meinen Fehlertext ;-) )

Die einzige evt. funktionierende Lösung die mir gerade kommt ist, dass ich via {PHP:meinErrorScript.php} im PHPWCMS-Fehlertext auf ein Script verweise, welches dann gleich einen 404 header ausgibt und dann das script via

Code: Select all

exit();
beendet.
Vielleicht könnte das gehen :-) ..

Ein bisschen kompliziert geschrieben, ich hoffe ihr könnts verstehen O:)

Re: Problem Google sitemap 404 Not Found

Posted: Sun 7. Sep 2008, 19:08
by Skipy
Erst hatte ich folgende Idee: Ich habe dieses Stücken Code eingebunden im Backend-Vorlage-Fehlertext:

Code: Select all

[PHP]
	header("HTTP/1.0 404 Not Found");
	exit();
[/PHP]
Dann kam mir aber, dass dann ein normaluser ja total irritiert sein muss ... (logisch ;-) )
Daraufhin bin ich auf die Funktion ob_start(); gestoßen, welche es mir erlaubt, jederzeit via php einen Header zu senden (also auch nachdem bereits ein echo "blub" gesendet wurde), da diese Funktion alles buffert. Zufälliger Weise enthält die index.php aus PHPWCMS solch eine Funktion. Das heißt ich müssten den 404-Header auch nachträglich senden können. Folglich habe ich jetzt folgenden Code genommen:

Code: Select all

[PHP]
	header("HTTP/1.0 404 Not Found");
	//exit();
[/PHP]
Jetzt wird der Fehlertext ganz regulär angezeigt und theoretisch müsste Google auch diesen 404-Header realisieren? ... Dass jedenfalls ist jetzt mal meine Hoffnung ... was denkt ihr?