Cheatah: Index-dateien rausfinden?

Beitrag lesen

Hi,

Deine Anmerkung klingt so, als könntest Du damit beträchtliche Verwirrung
auslösen. Ich mußte sie immerhin mehrfach lesen, um zu verstehen, was
genau Du damit gemeint zu haben scheinst.

tut mir leid, das war natürlich nicht meine Absicht.

Einerseits verstehe ich nicht, was Du gegen Endungen wie *.shtml etc. hast.

Dann will ich es Dir gerne sagen:

URLs sind nicht ausschließlich zur automatischen Verarbeitung gedacht. Sie sind auch für den Menschen da - er soll sie sich merken können. Nur hiermit ist der Riesenaufwand mit DNS-Servern zu erklären, und ich glaube, Tim Berners-Lee hatte das auch im Sinn, als er seinen Ausspruch "Good URIs don't change - people change them." prägte.

Warum aber soll es einem Besucher aufgezwungen werden, sich neben einem URL-Pfad auch noch die im Hintergrund verwendete Technik zu merken? Es kann ihm gerade mal abverlangt werden zu realisieren, dass die URL auf Dateiebene endet. Dass es oft ".htm" statt ".html" heißt (bzw. hieß), sollte eigentlich auch heute noch jedem oft genug begegnet sein, um zumindest auf die Idee zu kommen, es mal auszuprobieren. Aber ihn dann auch noch testen zu lassen, ob es nun ".shtml", ".phtml", ".php", ".php3", ".jsp" oder ganz was anderes war - nein, das ist respektlos. Schlimm genug, dass URLs mit "/cgi-bin/" nicht merkbar sind (schon allein wegen des Searchparts, der üblicherweise dabei ist), aber bei "normalen" Seiten ist sowas in meinen Augen eine Frechheit dem Kunden gegenüber.

Wenn HTML rauskommt, hat nicht das Gegenteil behauptet zu werden. Beim Browser kommt garantiert[1] kein SHTML oder PHP an, also hat das nicht in der URL zu stehen.
[1] Eine entsprechende Konfiguration vorausgesetzt :-)

Korrekt arbeitende HTTP-Clients werden sich daran nicht stören,

Nein, das ist sicher wahr. Für den Client gibt es nur die URL.

und der M$IE macht eh, was er will.

Auch der wird kein SSI parsen ;-)

Ich brauche sogar massiv Endungen ungleich *.html,
weil ich eigene Apache-Handler einsetze, welche bestimmte Endungen parsen
und andere nicht

Auch das kannst Du idividuell konfigurieren. Wenn's sein muss, nennst Du die URL auf ".html", und suchst Dir per mod_rewrite o.ä. ein ".html.php" oder ".html.ssi" aus. Ich bin mit meinem ".html=>PHP, .htm=>SSI" schon verflucht faul, was die Konfiguration betrifft.

  • und ich kann in jedem Verzeichnis Dateien jedes beliebigen
    Typs haben, weil ich meine Dateien thematisch gruppiere und nicht nach Typen

Das ist kein Hindernis :-)

Andererseits klingt sie im Kontext von DirectoryIndex etwas seltsam, weil
dessen Funktion ja gerade darin besteht, URLs mit "/" am Ende zu verwenden.
Was dann innerhalb dieses Verzeichnisses für Endungen verwendet werden, das
geht den Anwender doch gar nichts an.

Da hast Du recht, daher ja auch der Hinweis auf "/" in dem ersten von Dir zitierten Teil. Ich ging einfach davon aus, dass von der Default-Seite auf andere Seiten im selben Verzeichnis zu schließen ist; wenn es also eine index.shtml gibt, gibt es auch eine seite.shtml, anstatt einer seite.html.

Um noch weiter zu gehen: Ich möchte überhaupt nicht, daß er das weiß und ggf.
auf die suboptimale Idee kommt, aus der Existenz einer index.html zu schließen,
er dürfe einen Link darauf setzen, was ich eben genau _nicht_ will, weil ich
durch die Verwendung von DirectoryIndex jederzeit meine Implementierungstechnik
ändern kann, ohne daß er das mitbekommt und ohne daß seine Links brechen.

Das ist ebenfalls über die Serverkonfiguration machbar. Wenn Du von SSI auf PHP wechselst, heißt die Ressource immer noch index.html, wird aber anders vom Server bearbeitet.

Cheatah