Till: Frage zu Unterordner bzw. Unterseite

Gibt es ein einen Unterschied ob ich meine Unterseiten alle in jeweilige Unterordner packe als index.html oder als unterseitenname.html

Also z.B meineseite/impressum/index.html
meineseite/diesunddas/index.html

oder macht es mehr Sinn das Ganze so anzulegen:

    meineseite/impressum.html
    meineseite/diesunddas.html

so dass nur die Start/Hauptseite ein index.html hat ?

Danke

  1. Gibt es ein einen Unterschied ob ich meine Unterseiten alle in jeweilige Unterordner packe als index.html oder als unterseitenname.html

    Falls Du das gute alte SELFHTML noch kennen solltest: Da war die Ordnerstruktur nicht im URL abgebildet sondern virtuell im Markup. Tatsächlich befanden sich sämtliche Unterseiten physikalisch in einem einzigen Ordner. Ich fand die Idee gut und habe sie übernommen. Das Gute daran: Änderungen in der virtuellen Ordnerstruktur wirken sich nicht auf die URLs der Seiten aus. Und wie oft baut man eine Seite um, legt neue Ordner an, verschiebt Seiten in andere Ordner usw!

    MfG

    Uns überfüllts! Wir ordnen. Es zerfällt. Wir ordnen wieder und zerfallen selbst. Rainer Maria Rilke

    1. Hallo pl,

      Falls Du das gute alte SELFHTML noch kennen solltest: Da war die Ordnerstruktur nicht im URL abgebildet sondern virtuell im Markup. Tatsächlich befanden sich sämtliche Unterseiten physikalisch in einem einzigen Ordner.

      Als das Projekt größer wurde, hat sich eine Ordnerstruktur als sinnvoll erwiesen. SELFHTML 5.0 aus dem Jahr 1996 hatte 180 Dateien, davon 88 HTML-Dokumente, die sich tatsächlich alle in einem einzigen Ordner befanden. Allerdings wurde da auch keine hierarchische Struktur in der Seite dargestellt. Es gab lediglich einen Link zur Startseite.

      Bis demnächst
      Matthias

      --
      Rosen sind rot.
      1. Als das Projekt größer wurde, hat sich eine Ordnerstruktur als sinnvoll erwiesen.

        Trugschluss. Weil: Es spielt keine Rolle wo Inhalte physikalisch gespeichert sind, Einzelseiten und Templates können auch in Datenbanken liegen. MfG

        1. Hallo pl,

          Als das Projekt größer wurde, hat sich eine Ordnerstruktur als sinnvoll erwiesen.

          Trugschluss. Weil: Es spielt keine Rolle wo Inhalte physikalisch gespeichert sind, Einzelseiten und Templates können auch in Datenbanken liegen. MfG

          Fehldeutung. Niemand hat behauptet, dass eine Dateisystem-Ablage der Weisheit einziger Schluss sei. Aber egal wie die Ablage aussieht, du bildest eine Struktur. In einer Datenbank-Ablage fängst Du bei einer gewissen Größe automatisch an, gruppierende Namenskonventionen einzuführen ("proj1.mainpage", "proj1.modul4.customerQuery", etc). In einer Dateisystem-Ablage machst Du es entweder flach nach dem gleichen Muster, oder eben mit Ordnern.

          Rolf

          --
          Dosen sind silbern
          1. Hi,

            Als das Projekt größer wurde, hat sich eine Ordnerstruktur als sinnvoll erwiesen.

            Trugschluss. Weil: Es spielt keine Rolle wo Inhalte physikalisch gespeichert sind, Einzelseiten und Templates können auch in Datenbanken liegen. MfG

            Fehldeutung. Niemand hat behauptet, dass eine Dateisystem-Ablage der Weisheit einziger Schluss sei. Aber egal wie die Ablage aussieht, du bildest eine Struktur. In einer Datenbank-Ablage fängst Du bei einer gewissen Größe automatisch an, gruppierende Namenskonventionen einzuführen ("proj1.mainpage", "proj1.modul4.customerQuery", etc). In einer Dateisystem-Ablage machst Du es entweder flach nach dem gleichen Muster, oder eben mit Ordnern.

            Genau das ist ja der Unfug gegen den ich aufbegehre. Anstelle sich von gruppierenden Namenskonventionen abhängig zu machen ist es weitaus zweckmäßiger, die Gruppenzugehörigkeit über ein extra Datenfeld (MySQL, DB) oder eine Propertiy (OOP) zu regeln. So genügt ein einziges parent-Attribut zum Aufbau beliebig tief geschachtelter Hierarchien -- völlig unabhängig von irgendwelchen Namenskonventionen (wobei ein Punkt . auch nur einen Ersatz für den / darstellen würde).

            Eric Foster Johnson schreibt in seinem Buch "Perl Module": Der Hauptgrund für den Einsatz von OOP ist der dass man mit OOP am Besten mit Veränderungen umgehen kann. Ob man in Sachen RDBMS noch einen Schritt weiter geht in Richtung ORM ist nur eine andere Frage der Skalierbarkeit.

            Schöne Grüße 😉

        2. Tach!

          Als das Projekt größer wurde, hat sich eine Ordnerstruktur als sinnvoll erwiesen.

          Trugschluss. Weil: Es spielt keine Rolle wo Inhalte physikalisch gespeichert sind, Einzelseiten und Templates können auch in Datenbanken liegen.

          Es ging bei der Aussage lediglich um das Projekt SELFHTML, nicht um einen Generalanspruch. Das Ziel war unter anderem eine einfache Installierbarkeit der Dokumentation in vielen Umgebungen. Die Dokumentation bestand aus einer Anzahl statischer Seiten, für welche einzelne Dateien die wesentlich einfachere Variante war, als ein CMS mit DBMS aufzusetzen. Lediglich ein Kopieren oder ein Auspacken eines Archives war dafür notwendig beziehungsweise ausreichend. Verzeichnisse für Themenbereiche zu verwenden, war für diesen Zweck und aufgrund der gestiegenen Größe der Dokumentation sehr wohl sinnvoll. Nicht unbedingt aus Sicht der Anwender, aber aus Sicht der Organisation und Verwaltung des Projektes. Dass für andere Ansprüche und Notwendigkeiten andere Lösungen angemessener sein können, wurde ja nicht bestritten und gehörte auch nicht zum Thema der Aussage und der Antwort darauf.

          dedlfix.

  2. Hallo Till,

    Meiner Meinung nach ist die 2. Variante sinnvoller.

    Sehr viele Ordner anzulegen verwirrt nur, zumal die Seiten alle index.html heißen.

    so dass nur die Start/Hauptseite ein index.html hat ?

    Es ist nicht notwendig, dass die Hauptseite index.html heißt. Es ist lediglich eine verbreitete Einstellung des Webservers dass er beim Aufruf eines Verzeichnisses nach index.htm, index.html, index.php sucht. Das lässt sich auch ausschalten oder umkonfigurieren zu example.com/fetz.t.

    Bis demnächst
    Matthias

    --
    Rosen sind rot.
  3. Hallo Till,

    der aus meiner Sicht wichtigste Unterschied ist folgender:

    Eine Adresse wie meineseite/diesunddas/index.html ist flexibler und leichter zu konfigurieren. Die gängigen Webserver suchen bei Eingabe einer Adresse wie meineseite/diesunddas/ innerhalb dieses Unterverzeichnisses nacheinander nach in der Konfiguration des Servers festgelegten Dateien. Die erste, die sie finden, liefern sie sie aus. Das kann index.html oder default.htm sein, aber eben auch index.php, index.cgi oder index.py sein. Damit lässt sich sehr leicht die technische Basis einzelner Seiten ändern, ohne die Adressen in den Links der Seiten ebenfalls ändern zu müssen. Voraussetzung dafür ist natürlich, dass der Dateiname niemals in Links auftaucht.

    Eine Adresse wie meineseite/diesunddas.html verlangt hingegen, dass sobald teils einfaches HTML und teils eine serverseitige Programmiersprache eingesetzt wird, entweder alle Dokumente mit der Endung .html von der serverseitigen Programmiersprache interpretiert werden oder der Webserver eine Liste pflegen muss, in der festgehalten wird, welche Seiten durch die serverseitige Programmiersprache zu interpretieren sind. Sonst gäbe es neben diesunddas.html auch eineandereseite.php, was nicht mehr dem Namensschema entspräche, und bei nachträglichem Einsatz der serverseitigen Programmiersprache für einige Seiten müssten die Links auf den Seiten angepasst werden.

    Wenn man natürlich ein CMS einsetzt, sollte das diese Arbeit übernehmen, so dass es letztlich eine Geschmacksfrage wäre.

    MfG, at

    1. Danke für die ausführlichen Antworten !

    2. @@at

      Eine Adresse wie meineseite/diesunddas/index.html ist flexibler und leichter zu konfigurieren. […] Damit lässt sich sehr leicht die technische Basis einzelner Seiten ändern, ohne die Adressen in den Links der Seiten ebenfalls ändern zu müssen.

      Dasselbe lässt sich auch ohne Verzeichnisse erreichen – bspw. mit MultiViews.

      Damit ist die Datei meineseite/diesunddas.html ist erreichbar unter meineseite/diesunddas. Und das ist sie auch immer noch, wenn sich deren Dateiname bspw. zu meineseite/diesunddas.php ändert.

      Voraussetzung dafür ist natürlich, dass der Dateiname niemals in Links auftaucht.

      Wenn die Seite unter meineseite/diesunddas.html erreichbar sein soll, kann der Dateiname auch meineseite/diesunddas.html.php sein.

      Eine Adresse wie meineseite/diesunddas.html verlangt hingegen, dass sobald teils einfaches HTML und teils eine serverseitige Programmiersprache eingesetzt wird, entweder alle Dokumente mit der Endung .html von der serverseitigen Programmiersprache interpretiert werden oder der Webserver eine Liste pflegen muss, in der festgehalten wird, welche Seiten durch die serverseitige Programmiersprache zu interpretieren sind.

      Nö, s.o.

      Außerdem ließe sich auch der x-Bit-Hack nutzen um zu kennzeichnen, welche Dateien durch PHP laufen sollen.

      LLAP 🖖

      --
      “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
      1. Hallo Gunnar,

        vielen Dank für deine Bestätigung, dass es mit der von mir propagierten Lösung einfacher ist.

        MfG, at

        1. @@at

          vielen Dank für deine Bestätigung, dass es mit der von mir propagierten Lösung einfacher ist.

          Nichts zu danken. Ich habe nirgends gesagt, dass es einfacher wäre, haufenweise Verzeichnisse anzulegen als einmalig Options +MultiViews in eine .htaccess-Datei zu schreiben.

          LLAP 🖖

          --
          “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
          1. Hallo Gunnar.

            Ich habe nirgends gesagt, dass es einfacher wäre, haufenweise Verzeichnisse anzulegen als einmalig Options +MultiViews in eine .htaccess-Datei zu schreiben.

            Das trifft sich gut, denn es ist sehr viel einfacher, ein paar Verzeichnisse anzulegen, als sich mit der korrekten Konfiguration eines Webservers zu befassen und deren Funktionsweise so weit zu verstehen, dass man Änderungen vornehmen sollte.

            MfG, at

            1. Ich habe nirgends gesagt, dass es einfacher wäre, haufenweise Verzeichnisse anzulegen als einmalig Options +MultiViews in eine .htaccess-Datei zu schreiben.

              Das trifft sich gut, denn es ist sehr viel einfacher, ein paar Verzeichnisse anzulegen, als sich mit der korrekten Konfiguration eines Webservers zu befassen und deren Funktionsweise so weit zu verstehen, dass man Änderungen vornehmen sollte.

              +1

              Hinzu kommt: ist es überhaupt ein Apache? Ist mod_negotiation aktiv? Ist AllowOverride entsprechend gesetzt?

            2. Hello,

              und wenn man das Schema konequent durchhält, kann man (später) sehr leicht seine Sitemap automatisch erzeugen lassen.

              Liebe Grüße
              Tom S.

              --
              Es gibt nichts Gutes, außer man tut es!
              Das Leben selbst ist der Sinn.
              1. @@TS

                und wenn man das Schema konequent durchhält, kann man (später) sehr leicht seine Sitemap automatisch erzeugen lassen.

                1. Kann man das bei flacher Verzeichnisstruktur mit index.html, foo.html, bar.html, … auch.

                2. Wozu sollte eine Sitemap gut sein?

                LLAP 🖖

                --
                “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
            3. @@at

              Ich habe nirgends gesagt, dass es einfacher wäre, haufenweise Verzeichnisse anzulegen als einmalig Options +MultiViews in eine .htaccess-Datei zu schreiben.

              Das trifft sich gut, denn es ist sehr viel einfacher, ein paar Verzeichnisse anzulegen, als sich mit der korrekten Konfiguration eines Webservers zu befassen und deren Funktionsweise so weit zu verstehen, dass man Änderungen vornehmen sollte.

              Die Einfachheit liegt im Auge des Betrachters.

              Es ist weitaus schwieriger, bei vielen index.html-Dateien den Überblich zu behalten. Matthias sprach es an. Symbolbild:

              Screenshot Textmate, 7 Tabs geöffneter Dateien, alle „index.html“

              Übrigens sprachst du davon, dass die Orgie mit den Verzeichnissen und index.html der einzige Weg wäre. Das verlangte nach Richtigstellung.

              LLAP 🖖

              --
              “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
              1. Hallo Gunnar.

                Es ist weitaus schwieriger, bei vielen index.html-Dateien den Überblich zu behalten. Matthias sprach es an. Symbolbild:

                Screenshot Textmate, 7 Tabs geöffneter Dateien, alle „index.html“

                Kann das in Textmate nicht konfiguriert werden? Bei Visual Studio Code ist das Standard:

                Screenshot Visual Studio Code, Tabs enthalten Ordnernamen

                Übrigens sprachst du davon, dass die Orgie mit den Verzeichnissen und index.html der einzige Weg wäre. Das verlangte nach Richtigstellung.

                Du zitierst doch sonst so fleißig. Hilf mir doch mal auf die Sprünge, ich finde die Stelle gerade nicht.

                MfG, at

                1. @@at

                  Du zitierst doch sonst so fleißig. Hilf mir doch mal auf die Sprünge, ich finde die Stelle gerade nicht.

                  „Eine Adresse wie meineseite/diesunddas.html verlangt hingegen, dass […] entweder alle Dokumente mit der Endung .html von der serverseitigen Programmiersprache interpretiert werden oder der Webserver eine Liste pflegen muss, in der festgehalten wird, welche Seiten durch die serverseitige Programmiersprache zu interpretieren sind. […] und bei nachträglichem Einsatz der serverseitigen Programmiersprache für einige Seiten müssten die Links auf den Seiten angepasst werden.“

                  LLAP 🖖

                  --
                  “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
                  1. Hallo Gunnar,

                    vielen Dank! Hier ist meine Richtigstellung: Ich habe im Rahmen des Vergleiches der zwei vom Fragesteller genannten Varianten die Nachteile des zweiten Weges beschrieben und du sagst, ich spräche „davon, dass [der erste] der einzige Weg wäre“. Diese Interpretation ist falsch. Und zwar ist deine Interpretation meiner Aussage so offensichtlich falsch, dass ich mich schwer damit tue, sie mit deiner unzweifelhaften intellektuellen Kapazität in Übereinstimmung zu bringen. – Ich bin erstaunt, dass ich diese Worte trotz meiner Sprachlosigkeit überhaupt schreiben kann.

                    MfG, at

                    1. @@at

                      Hier ist meine Richtigstellung: Ich habe im Rahmen des Vergleiches der zwei vom Fragesteller genannten Varianten die Nachteile des zweiten Weges beschrieben und du sagst, ich spräche „davon, dass [der erste] der einzige Weg wäre“.

                      Nein. Du sagtest, der zweite Weg „verlangt, dass entweder alle Dokumente mit der Endung .html von der serverseitigen Programmiersprache interpretiert werden oder der Webserver eine Liste pflegen muss“.

                      Ich sagte, dass der zweite Weg weder das eine noch das andere verlangt, sondern dass es da noch andere Möglichkeiten gibt.

                      Ich bin erstaunt, dass ich diese Worte trotz meiner Sprachlosigkeit überhaupt schreiben kann.

                      2195 😉

                      Aber es ist wohl nicht wert, hier weiter über Formulierungen rumzuzanken.

                      LLAP 🖖

                      --
                      “When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
                      1. 2195 😉 "seiner Sprachlosigkeit wortreich Ausdruck zu verleihen, dürfte auch nicht überzeugen."

                        Ich habe nicht den Eindruck, dass AT hier überzeugen wollte. Viel mehr hatte ich den Eindruck, dass er seine Irritation zum Ausdruck bringen wollte. Für mich mehr als nachvollziehbar!

                        Aber es ist wohl nicht wert, hier weiter über Formulierungen rumzuzanken.

                        Der "Wert" liegt hier wohl im Auge des Betrachters.