ErrorDocument handeln...

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Vielleicht ist das ganze leicht OT...

Ich hab in PyLucid einen sog. poormans_modrewrite Modus eingebaut...

Um auch ohne apache's Modrewrite eine saubere URL *ohne* URL-Parameter zu erhalten kann man mittels "Customized error messages" in der .htaccess arbeiten. Dabei legt man für einen 404 Fehler (Seite nicht gefunden) das ErrorDocument auf die PyLucid's index.py Seite fest.

Das ganze klappt auch bisher ganz gut, wie man an der URL sehen kann:
http://www.jensdiemer.de/Programmieren/Python/PyLucid

Nun zu meiner Frage:

Es kommt natürlich aber vor, das wirklich eine Datei auf dem Sever gemeint ist, die es auch wirklich nicht gibt. Also ein echter 404 Fehler... Nur, welche Seite zeige ich dann an???

Ein "echter" Server würde als Header z.B. ein HTTP/1.1 400 Bad Request\r\n oder HTTP/1.1 404 Not Found\r\n zurück liefern...
Nun ist PyLucid ja nur ein CGI...
Ein CGI kann aber anscheinend einen "Header" nur immer ab Content-Type: text/html\r\n anfangen...

Was mache ich nun am besten???

Insbesondere was mache ich bei Datei-Anfragen, wenn die Datei nicht existiert???

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

So, ich habe versucht eine möglichst elegante Lösung zu finden...

Hierbei erscheint die letzte richtige Seite, mit einem Fehler-Hinweis:
http://www.jensdiemer.de/Programmieren/ ... ibtesnicht

Hierbei erscheint eine nachgemachte Fehlerseite, mit alternativ URLs:
http://www.jensdiemer.de/Programmieren/ ... snicht.gif

Das blöde ist nur, das der Browser nicht wirklich mitbekommt, das es gibtesnicht.gif nicht existiert :( Wenn man also ein nicht existierende Bild in eine Webseite baut, sieht man leider nicht ein "Brocken-Image", sondern einfach nur nix :(

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten