Alex: DirectoryIndex nur im Basisverzeichnis

Hallo Leute,

habe mal eine dringende Frage und finde leider über die Suchmaschinen nichts.

Ich habe anlässlich dieser schönen Jahreszeit auf unserer Firmenhomepage die DirectoryIndex auf die winterseite gelenkt.
Also jeder der unsere Domain aufruft kommt gleich auf der Winterseite raus.
Jetzt bin ich auf ein kleines Problemchen gestoßen:
Die .htaccess wirkt sich ja auf die Unterornder auch aus und da funktionieren jetzt nichtmehr alle links, wie zum Beilspiel "www.example.com/admin". Dort sucht er auch diese Winterseite...

Wie kann ich nun in der .htacces einstellen, dass es sich wirklich nur auf den Basisorndeer auswirkt, also nur wenn ich www.example.com eingebe?

Wäre um jede Antwort dankbar :)

mfg
Alex

PS: Die andere möglichkeit wäre die DirectoryIndex jedes Unterordners auf index.php zu setzen nehme ich an...

  1. Schon wieder Hallo,

    ich habe das Problem jetzt doch alleine lösen können.
    Zwar nicht ganz korrekt aber immerhin.

    Zuerst hatte ich da stehen:
    DirectoryIndex /winter.php

    Dann als nächster Schrit
    DirectoryIndex winter.php
    ==> Schon besser jetzt wird wenigstens nicht diese eine winter.php in jedem Ordner versucht anzuzeigen sondern nur ein Zugriff verweigert

    Nächster schritt:
    DirectoryIndex winter.php index.php index.html

    Jetzt klappt wieder alles.
    Ist nicht ganz sauber, da es Probleme gibt sobald ich in einem Unterordner wieder eine winter.php habe, die aber kein Index sein soll.

    mfg
    Alex

    1. Hello,

      Nächster schritt:
      DirectoryIndex winter.php index.php index.html

      Jetzt klappt wieder alles.
      Ist nicht ganz sauber, da es Probleme gibt sobald ich in einem Unterordner wieder eine winter.php habe, die aber kein Index sein soll.

      Ich würde stattdessen ein moved temporarely benutzen für das File index.php

      http://httpd.apache.org/docs/2.0/mod/core.html#files
      http://httpd.apache.org/docs/2.0/mod/mod_alias.html#redirect
      http://httpd.apache.org/docs/2.0/mod/mod_alias.html#redirectmatch

      Harzliche Grüße vom Berg
      http://bergpost.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)

      1. n'abend,

        Ich würde stattdessen ein moved temporarely benutzen für das File index.php

        wenn du index.php auf weihnachten.php umleiten lässt, ist index.php nicht mehr aufrufbar. Dann hast du deine Weihnachtsseite, aber keine Startseite mehr. Das Problem ist natürlich irrelevant, wenn die Weihnachtsseite den Inhalt der Startseite umfasst.

        weiterhin schönen abend...

        --
        Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
        sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|
        1. Hello,

          Ich würde stattdessen ein moved temporarely benutzen für das File index.php

          wenn du index.php auf weihnachten.php umleiten lässt, ist index.php nicht mehr aufrufbar. Dann hast du deine Weihnachtsseite, aber keine Startseite mehr. Das Problem ist natürlich irrelevant, wenn die Weihnachtsseite den Inhalt der Startseite umfasst.

          So hatte ich das auch verstanden.
          Die generelle Einstiegsseite sollte temporär verändert werden.
          Wenn die alte Einstiegsseite nebenbei noch weiter existieren soll, ist das fraglos dann ein Problem.

          Dass hier aber ein einfaches CMS im Einsatz wäre, dass ohnehin immer "index.php" als einzige Seite mit Parametern aufruft, konnte ich nicht erkennen. Dann könnte man die Startseite sicher auch temporär intern "umleiten".

          Harzliche Grüße vom Berg
          http://bergpost.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau
          Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)

    2. n'abend,

      Zuerst hatte ich da stehen:
      DirectoryIndex /winter.php

      was so viel bedeutet wie »Der Index dieses Verzeichnisses liegt in der Datei winter.php, welche sich [immer] im DocumentRoot (Wurzelverzeichnis) befindet.«

      Dann als nächster Schrit
      DirectoryIndex winter.php

      was so viel bedeutet wie »Der Index dieses Verzeichnisses heißt winter.php«

      Nächster schritt:
      DirectoryIndex winter.php index.php index.html

      was so viel bedeutet wie »Der Index dieses Verzeichnisses heißt entweder winter.php oder index.php oder index.html - in dieser Reihenfolge.«

      Ist nicht ganz sauber, da es Probleme gibt sobald ich in einem Unterordner wieder eine winter.php habe, die aber kein Index sein soll.

      Mir ist kein Weg bekannt, wie spezifizierte Direktiven in einem Unterverzeichnis aushebeln kannst. Der stumpfsinnigste Trick ist für jedes Unterverzeichnis (erste Ebene genügt) ebenfalls eine .htaccess zu erstellen, in der du nichts weiter setzt als »DirectoryIndex index.php index.html«

      Mehr Möglichkeiten hättest du, wenn du die Konfiguration deines Webservers selbst anpassen könntest. Das wird aber vermutlich nicht der Fall sein?

      weiterhin schönen abend...

      --
      Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
      sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|
    3. Moin!

      Ist nicht ganz sauber, da es Probleme gibt sobald ich in einem Unterordner wieder eine winter.php habe, die aber kein Index sein soll.

      Rewriting wäre die schlauere Lösung gewesen. Die hätte ganz selektiv nur "/" und "/index.php" auf "/winter.php" umgeleitet, ohne dass es zu irgendeiner sonstigen Beeinträchtigung gekommen wäre.

      Alternativ, und wirklich richtig Oldschool: Dateien umbenennen! index.php -> index.php.alt und winter.php -> index.php - das ist so altmodisch, da kommt kein Schwein drauf! :)

      - Sven Rautenberg

      --
      "Love your nation - respect the others."
      1. Hello,

        Ist nicht ganz sauber, da es Probleme gibt sobald ich in einem Unterordner wieder eine winter.php habe, die aber kein Index sein soll.

        Rewriting wäre die schlauere Lösung gewesen. Die hätte ganz selektiv nur "/" und "/index.php" auf "/winter.php" umgeleitet, ohne dass es zu irgendeiner sonstigen Beeinträchtigung gekommen wäre.

        Alternativ, und wirklich richtig Oldschool: Dateien umbenennen! index.php -> index.php.alt und winter.php -> index.php - das ist so altmodisch, da kommt kein Schwein drauf! :)

        Das widerspricht auch der Regel, niemals den Namen von einer bereits publizierten Ressource zu ändern.
        Ich halte die temporäre Umleitung (302) für den besseren Weg. Dadurch verliert index.php nicht seinen Status und alle bisher daran geknüpften Suchbegriffe bleiben erhalten und winter.php erlangt einen eigenen, der auch nach der Rückbesinnung auf das Frühjahr (und index.php) nicht verloren geht, und dann sogar immer noch erreichbar sein kann.

        Harzliche Grüße vom Berg
        http://bergpost.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
        Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)

        1. Moin!

          Ist nicht ganz sauber, da es Probleme gibt sobald ich in einem Unterordner wieder eine winter.php habe, die aber kein Index sein soll.

          Rewriting wäre die schlauere Lösung gewesen. Die hätte ganz selektiv nur "/" und "/index.php" auf "/winter.php" umgeleitet, ohne dass es zu irgendeiner sonstigen Beeinträchtigung gekommen wäre.

          Alternativ, und wirklich richtig Oldschool: Dateien umbenennen! index.php -> index.php.alt und winter.php -> index.php - das ist so altmodisch, da kommt kein Schwein drauf! :)

          Das widerspricht auch der Regel, niemals den Namen von einer bereits publizierten Ressource zu ändern.

          Absolut nicht. Was unterscheidet denn "index.php" von "winter.php"? Inhaltlich vermutlich nichts, höchstens im Design. Beides ist "Startseite".

          Ich halte die temporäre Umleitung (302) für den besseren Weg. Dadurch verliert index.php nicht seinen Status und alle bisher daran geknüpften Suchbegriffe bleiben erhalten und winter.php erlangt einen eigenen, der auch nach der Rückbesinnung auf das Frühjahr (und index.php) nicht verloren geht, und dann sogar immer noch erreichbar sein kann.

          Doch. index.php wird jetzt nicht mehr mit Status 200 ausgeliefert. Das ist selbstverständlich suchmaschinenwirksam! Und das will man eigentlich nicht haben, insbesondere wenn es nur darum geht, das Design einer Startseite auszutauschen, aber keine Inhalte zu ändern.

          Ebenso will man wohl kaum, dass die Winter-Startseite separat indiziert wird und auch nach Jahren noch von Google gefunden und angezeigt wird.

          Wenn du schon so argwönisch auf die URLs schaust, folgende Faustregel: Niemals eine neue URL für dasselbe eröffnen!

          - Sven Rautenberg

          --
          "Love your nation - respect the others."