crossi: Umleitung bei unvollständiger URL per .htaccess

Hallo Forum,

ist es per .htaccess möglich, jemanden auf eine bestimmt Seite umzuleiten, wenn die URL "unvollständig" eingegeben wurde?

Beispiel: die vom User in den Browser eingegebene URL http://www.irgendwo.de/verzeichnis soll umgeleitet werden nach http://www.irgendwo.de/verzeichnis/index.php.

Normalerweise kein Problem, denn entweder wird index.htm(l) oder index.php selbstständig geöffnet. Aber in diesem Fall ist es nicht normal, weil: das Verzeichnis www.irgendwo.de/verzeichnis ist per .htaccess zugriffsgeschützt. Lediglich die Datei index.php ist für alle Nutzer freigegeben (Dort befindet sich eine Verzweigung auf geschützte und ungeschützte Bereiche). D.h. alle User dürfen diese Seite sehen, aber sobald auf einen geschützten Bereich zugegriffen werden soll, greift der Passwortschutz.

Hier die aktuelle .htaccess
AuthName "Passwortgeschützter Bereich"
AuthType Basic
AuthUserFile /home/htdocs/web/html/verzeichnis/.htpasswd
require valid-user
<Limit GET POST>
order deny,allow
</Limit>

htaccess und htpasswd verstecken

<FilesMatch "^." >
deny from all
</FilesMatch>

index.php entschützen

<Files index.php>
Allow from All
Satisfy Any
</Files>

Wenn ich nun http://www.irgendwo.de/verzeichnis/index.php eingebe, funktioniert das ganze, wenn ich aber die unvollständige URL eingebe,ohne index.php fragt er sofort nach einem Passwort. Deshalb möchte ich diese Umleitung drin haben, bzw die unvollständige URL soll auf vollständig erweitert werden.

Ist ein bisschen konfus zu erklären, aber ich hoffe sehr, das es trotzdem einigermaßen verstanden wird. ;)

Für Tipps in der Richtung wäre ich sehr dankbar.

MfG
Crossi

  1. Moin crossi!
    Ich bin nicht so Fit in htaccess, aber könntest du nicht mit einem Redirect immer auf die index.php weiterleiten, wenn nur http://www.irgendwo.de/verzeichnis eingegeben wird?
    tschüssi
    ichen

    --
    Ichen
    1. Ich bin nicht so Fit in htaccess, aber könntest du nicht mit einem Redirect immer auf die index.php weiterleiten, wenn nur http://www.irgendwo.de/verzeichnis eingegeben wird?

      danke für den Tipp - funzt aber leider nicht.

      schönen Tag noch

      MfG
      Crossi

  2. Hallo,

    Das kannst du sicherlich mittels mod_rewrite lösen.

    Aber ACHTUNG! mod_rewrite schaltet sich an 2 stellen ins Request Processing ein!

    Die erste Stelle ist VOR der Authentifizierung, die zweite DANACH!

    Du musst also die erste nehmen. Jetzt der entscheidende Punkt:

    .htaccess Dateien werden ZWISCHEN diesen beiden Schritten interpretiert.
    Das bedeutet dass deine Rewrite Regeln NICHT in einer .htaccess Datei sein können, sondern in die Apache Konfigurationsdateien müssen.

    Gruß,
    Philipp