Sven Rautenberg: warum gibt es keinen 404-er

Beitrag lesen

Moin!

man kann doch nicht alles in einen Topf werfen.
Es gibt MultiViews

Wie du an der von dir selbst verlinkten Seite feststellen kannst, ist MultiViews nicht nur für die Sprache, sondern auch für die Auslieferung eventuell komprimierter Seiten zuständig.

Der Apache-Webserver erlaubt es, dass man mehrere Dateiendungen durch Punkte abtrennt, um damit den Dateiinhalt näher zu beschreiben. Dabei kann jeder Dateiendung durch die Apache-Konfiguration eine bestimmte Bedeutung zugeordnet werden.

.html, .txt, .jpg, .png und .gif ordnen der Datei Content-Typen zu.

.en, .de, .fr etc. ordnen der Datei Sprachen zu.

.gz, .zip, .Z etc. ordnet der Datei Komprimierungstypen zu.

Das Zeichenencoding läßt sich ebenfalls einstellen.

Alle diese Metainformationen gehören in das Gebiet von mod_mime.

Sie werden aber genutzt von mod_negotiation, zu dem auch die Option MultiViews gehört (Option ist eine Kern-Direktive, die aber nur bei aktiviertem mod_negotiation auch MultiViews kennt).

Da in dem urspruenglichen Link _keine_ Extension angegeben ist, ist auch nicht klar, ob Text- oder Bild-Daten angefordert werden. Damit fallen MultiViews und Content Negotiation weg

Falsch, genau diese Mechanismen kommen dann erst zum Tragen. Der angegebenen URL kann keine Datei direkt zugeordnet werden, es gibt nur Dateien, die zusätzliche Dateiendungen haben - und die Dateiendungen erklären dem Webserver die Metainformationen, wie oben erwähnt.

mod_negotiation sorgt dann, basierend auf den Client-Headern, in denen dieser seine Präferenzen mitteilt, für die automatische Auswahl einer passenden Datei.

Das wäre kein Problem, gäbe es beispielsweise nur Grafiken (png/gif/jpg) zur Auswahl. Dein Spezialfall ist, dass es zusätzlich noch HTML, TXT und PHP gibt. Das macht die Sache schwieriger.

und mod_spelling muesste greifen. Dann jedoch sollte der Client eine Liste der vergleichbaren Dateien erhalten um sich was passendes auszusuchen.

Du meinst so eine Liste: http://www.uris.de/admin/addto.bla

Die kommt nicht von mod_speling (das würde im Hintergrund arbeiten und einfach eine passende Ressource auswählen), sondern auch von MultiViews.

Das wiederum passiert nicht, sondern es wird einfach etwas uebertragen. Und das entspricht absolut nicht den Anforderungen.

Deinen Anforderungen?

Du kannst ja mal checken, was dein Browser so an Headern mitschickt:
http://forum.de.selfhtml.org/cgi-bin/http_trace.pl

- Sven Rautenberg

--
My sssignature, my preciousssss!