Mailinglisten-Archive |
Kurzer Statusbericht: Es funktioniert.
Ich habe zu Testzwecken ein Fehlerdokument eingerichtet:
<?php
sleep(15);
header("HTTP/1.0 402 Payment Required");
?>
<!DOCTYPE ... usw.
und dieses mit
ErrorDocument /{pfad/}{fehlerdokument.php}
in die .htaccess eingebunden. Dann habe ich mit einem zweiten Skript
versucht, per get_headers(...) die Header einer nicht vorhandenen
Seite abzufragen. Ergebnis: Die Ausgabe wurde tatsächlich verzögert
und lieferte dann:
HTTP/1.0 402 Payment Required
Date: Wed, 31 Mar 2010 09:00:17 GMT
Server: Apache...
X-Powered-By: PHP/5.2.8-0.dotdeb.1
Content-Length: 256
Connection: close
Content-Type: text/html; charset=iso-8859-1
Der Header "Content-Length" enthält die Anzahl an Zeichen, die bei
tatsächlichem Aufruf der Seite ausgegeben würden, daher muss der
Server das Skript tatsächlich aufrufen, auch wenn er die Ausgabe
nicht an den Client schickt.
Das ermutigt mich, die obigen sleep()- und header()-Anweisungen in
eine if-Bedingung zu packen, die je nach $_SERVER['REQUEST_URI']
eine unverzögerte, normale 404-Fehlermeldung oder eine verzögerte
andere Meldung liefert, z. B.
402 Payment Required
403 Forbidden
406 Not Acceptable
421 There are too many connections from your internet address
424 Failed Dependency
501 Not Implemented
509 Bandwidth Limit Exceeded
Textmuster liefert mir die error.log jede Woche zu Genüge...
Nochmals danke an alle, die geholfen haben!
Mario Haßler
--
Sicherer, schneller und einfacher. Die aktuellen Internet-Browser -
jetzt kostenlos herunterladen! http://portal.gmx.net/de/go/atbrowser
php::bar PHP Wiki - Listenarchive