Hauke: .html oder .htm bevorzugt

Nahmt,

Wenn ich index.htm und index.html auf einem Serverplatz habe, welche wird dann angezeigt?

Danke,
Hauke

  1. Hi,

    Wenn ich index.htm und index.html auf einem Serverplatz habe, welche wird dann angezeigt?

    Diejenige, die aufgerufen wird.

    Falls nur das "Verzeichnis" angegeben wird:
    Diejenige, die in der Server-Konfiguration als bevorzugte Datei eingestellt ist. Das muß keine der beiden sein ;-)

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
    http://mud-guard.de/
  2. Wenn ich index.htm und index.html auf einem Serverplatz habe, welche wird dann angezeigt?

    Mal abgesehen von dem, was Andreas bereits geschrieben hat (und was Du leicht durch Ausprobieren selbst herausfinden hättest können):

    Die Dateiendungen .htm und .html weisen einer Datei beide den gleichen Typ text/html zu. Dies zusammen mit dem gleichen Basisnamen bedeutet, daß es sich (rein logisch) aus Serversicht bei index.htm und index.html um das gleiche Objekt handelt. Es ist also (rein logisch) völliger Quatsch, beide Dateien im gleichen Verzeichnis zu haben. Und das Ausnutzen technischer Gegebenheiten (hier: die Servereinstellungen, auf die Andreas hingewiesen hat) ungeachtet der theoretischen Vorgabe (hier: gleicher Basisname+gleicher Typ=gleiches Objekt) war im übrigen schon immer ein Fehler.

    Gruß,
      soenk.e

    1. Hi,

      Die Dateiendungen .htm und .html weisen einer Datei beide den gleichen Typ text/html zu.

      Nicht notwendigerweise. Das ist wiederum eine Frage der Server-Konfiguration (beim Apache z.B. in der mime.types oder per AddType/ForceType-Directives).
      Man kann durchaus .htm text/html zuweisen und .html text/plain (für Quelltext-Ansicht) oder text/xml+xhtml oder was auch immer.

      Dies zusammen mit dem gleichen Basisnamen bedeutet, daß es sich (rein logisch) aus Serversicht bei index.htm und index.html um das gleiche Objekt handelt.

      Nicht notwendigerweise. Nur wenn content-negotiation konfiguriert ist.

      Man kann aber z.B. einen Server auch so konfigurieren, daß .htm direkt ausgeliefert wird und .html durch den SSI-Parser gejagt wird.
      Oder durch sonst irgendeinen Parser (PHP z.B.).

      Es ist also (rein logisch) völliger Quatsch, beide Dateien im gleichen Verzeichnis zu haben.

      Nein. S.o., nur wenn content-negotiation konfiguriert ist.

      Und das Ausnutzen technischer Gegebenheiten (hier: die Servereinstellungen, auf die Andreas hingewiesen hat) ungeachtet der theoretischen Vorgabe (hier: gleicher Basisname+gleicher Typ=gleiches Objekt) war im übrigen schon immer ein Fehler.

      s.o. (content-negotiation ist keine Pflicht)

      cu,
      Andreas

      --
      Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
      http://mud-guard.de/
      1. Die Dateiendungen .htm und .html weisen einer Datei beide den gleichen Typ text/html zu.

        Nicht notwendigerweise.

        Wo HTML drauf steht, sollte auch HTML drin sein. Zu Personen, die entgegen allgemeiner, durchaus sinnvoller Konventionen .html-Dateien statt als HTML-Dokument als Bild oder sonstwas ausliefern, erübrigt sich eigentlich jedweder Kommentar.

        Dies zusammen mit dem gleichen Basisnamen bedeutet, daß es sich (rein logisch) aus Serversicht bei index.htm und index.html um das gleiche Objekt handelt.

        Nicht notwendigerweise. Nur wenn content-negotiation konfiguriert ist.

        Das hat absolut nichts mit irgendwelchen Servertechniken zu tun, es geht hier um einen logischen und sinnvollen Aufbau der Verzeichnis-/Dateistruktur.
        Das Wörtchen "Serversicht" mag an dieser Stelle zugegebenermaßen unglücklich gewählt sein, weil irreführend.

        Man kann aber z.B. einen Server auch so konfigurieren, daß .htm direkt ausgeliefert wird und .html durch den SSI-Parser gejagt wird.
        Oder durch sonst irgendeinen Parser (PHP z.B.).

        Was hat das mit dem Datentyp des Objekts zu tun? Kein Browser erhält Dateien vom Typ "ssi" oder "php"; die interne Verarbeitung ist für den endgültigen Datentyp in gewisser Hinsicht vollkommen irrelevant.

        Und nebenbei: Zumindest beim Apache 1 haben SSI-Dateien (.shtml) schon in der Konfiguration standardmäßig den Typ text/html, die Verarbeitung durch den SSI-Parser wird über Handler geregelt.
        Die Krücke über einen internen Datentyp x-httpd-php-bla-irgendwas hat bei PHP nur deshalb eine Existenzberechtigung, weil PHP außer HTML noch andere Sachen ausliefern kann. Ändert aber nichts daran, daß man auch PHP SSI-mäßig einbinden kann (bei Content Negotiation angeraten). Und auch nicht daran, daß die Ausgabe von PHP-Skripten standardmäßig ebenfalls als text/html gekennzeichnet wird.

        Es ist also (rein logisch) völliger Quatsch, beide Dateien im gleichen Verzeichnis zu haben.

        Nein. S.o., nur wenn content-negotiation konfiguriert ist.

        Ich bleibe dabei: Es ist Quatsch - was der Server zwischendurch für interne Kunststückchen veranstaltet, ist uninteressant.

        Schönen Abend,
          soenk.e

        1. Hi,

          Wo HTML drauf steht, sollte auch HTML drin sein.

          Die URI einer Ressource ist vollkommen unabhängig vom content-type.

          Wenn man nach Dir geht, müßte eine auf .php endende URI dann PHP-Sourcecode an den Browser ausliefern (weil ja PHP draufsteht).

          cu,
          Andreas

          --
          Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
          http://mud-guard.de/