[TYPO3-UG-Muenster] Error 404 und SimulateStatic

Martin Bless m.bless at gmx.de
Tue Nov 4 19:09:10 CET 2008


Hi Rolf,

ich hatte deine Frage ganz vergessen, aber hier vielleicht ein Stück
Antwort für dich.

BTW:
Mann, erst mal her mit der kompletten Info! Es würde mich vielmehr
reizen, einzusteigen, wenn du einfach ein paar deiner bisherigen
Erkenntnisse detaillierter und mit ein paar Links angereichert hier
posten würde. Dann hat man selbst etwas davon und kann punktgenau
einsteigen. Du kennst doch meine Protokolle ...

[Rolf Bartusel] wrote & schrieb:

>Hi Sascha,
>
>ich habe in der Hilfe zu den Google Webmastertools diverse Einträge dazu 
>gefunden. Die drücken sich dort etwas überkompliziert aus, aber 
>letztlich geht es wohl darum, dass nur echte 404er-Rückgaben dafür 
>soregn, dass Google nicht mehr existierende Seiten problemlos erkennt.

Guck, hier wären ein paar Links schön.

>Man kann dafür auch Templates nutzen, allerdings muss im Header die 
>entsprechende Information übermittelt werden:
>
>"Unabhängig davon, wie schön und nützlich Ihre benutzerdefinierte 
>404-Seite auch sein mag - Sie möchten wahrscheinlich nicht, dass sie in 
>den Google-Suchergebnissen angezeigt wird. Um die Indizierung von 
>404-Seiten durch Google und anderen Suchmaschinen zu unterbinden, 
>stellen Sie sicher, dass Ihr Webserver einen tatsächlichen 
>404-HTTP-Statuscode ausgibt, wenn eine nicht existierende Seite 
>aufgerufen wird."

Na gut, das ist doch einfach:
   <?php header("HTTP/1.1 404 Not Found\r\n"); ?>
Das \r\n da drin stammt von mir und ist wohl nicht nötigt.

Die Gelehrten scheinen sich auch zu streiten, ob es (a) oder (b)
heißen muss:
(a)  header('HTTP/1.0 404 Not Found');
(b) header("Status: 404 Not Found");
Ich nehme an, (b) tut's (für Google), und das ist mir sympathisch.
Allerdings scheint es so zu sein, dass PHP die Info analysiert und
ohnehin eigenen Code einsetzt. Siehe unten.

Jetzt wirst du maulen: "Schön und gut, aber mir geht's um TYPO3".
Probiere doch mal folgendes. Du erzeugst mit dem Kickstarter eine
Extension 'user_404' mit Frontendplugin. Und dann schreibst du in die
PHP-Datei "class.user_404_pi1.php":

class user_404_pi1 extends tslib_pibase {
  var $prefixId      = 'user_404_pi1';
  [...]
  function main($content,$conf)	{
    header('HTTP/1.0 404 Not Found');
    header("Status: 404 Not Found");
    // header("Location: http://www.irgendwo.hin");
    exit();
  [usw.]

Dann kannst du eine "Fehlerseite" anlegen und fügst ein Contentelement
vom Typ Plugin 'user_404' ein. Wenn du die Seite dann aufrufst, kommt
sie und ist leer. Das kannst du hier ausprobieren:

   http://t3temp.mbless.de/index.php?id=130

Das ist aber nicht so enttäuschend, wie es auf den ersten Blick
aussieht, denn im Header-Protokoll kann man nachlesen, dass ein
"echter 404er" geliefert wurde:
----------------------------------------------------------
http://t3temp.mbless.de/index.php?id=130

GET /index.php?id=130 HTTP/1.1
Host: t3temp.mbless.de
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.17)
Gecko/20080829 Firefox/2.0.0.17
Accept:
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: fe_typo_user=370a546e3e; style=Standardschrift;
be_typo_user=dde63d9af...;
PHPSESSID=d8b5bd132e...;
tx_phpmyadmin=c75b183146d9b3b233...
If-Modified-Since: Tue, 04 Nov 2008 17:17:16 GMT

HTTP/1.x 404 Not Found
Date: Tue, 04 Nov 2008 17:33:57 GMT
Server: Apache/1.3 (Unix) mod_ssl/2.8.28 OpenSSL/0.9.8f AuthPG/1.3
FrontPage/5.0.2.2635
Cache-Control: no-cache, must-revalidate
Expires: 0
Pragma: no-cache
X-Powered-By: PHP/5.2.5
Last-Modified: Tue, 04 Nov 2008 17:33:58 GMT
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html
----------------------------------------------------------

Da müsste Google doch mit zufrieden sein.

Tipp:
Es gibt für den Firefox eine Extension "Live Headers", damit kann man
diesen Verkehr mitschneiden.

Und damit du dir nicht Arbeit machen musst, die ich schon gemacht
habe, kannst du dir die Extension 'user_404' hier runterladen:
   http://t3temp.mbless.de/fileadmin/download/T3X_user_404-0_1_0.t3x

Und sicher gibt es auch einen Weg, da noch mehr vernünftige Info auf
der Seite auszugeben. Aber das ist mehr eine PHP-Frage, denke ich. Und
da bist du doch sicher der Richtige :-)

So, dass sind meine Gedankenkrümel. Nun lass mal was aus deiner
Schublade kommen!

Martin

-- 
http://mbless.de


More information about the TYPO3-UG-Muenster mailing list