Dirk Ruchatz: .htaccess

Moin moin,

kennt jemand eine gute deutschsprachige Dokumentation zu .htaccess-Dateien? </selfaktuell/schroepl01.htm> ist mir natürlich bekannt, aber da wird ja leider nur der Passwortschutz beschrieben und gesagt, daß noch einiges mehr möglich ist...

Konkret interessieren mich derzeit die Punkte:

  • Vererbung (ist .htaccess für gesamten Verzeichnisbaum
      gültig und wenn ja, können auch nur einzelne Eigen-
      schaften in Unterverzeichnissen geändert werden?)

  • Definition eigener Dateien zum Abfangen von Fehlern
      (404 etc.)

  • Anlegen von Subdomains (automatische Weiterleitung
      in Unterverzeichnis oder auf andere Domain)

  • Weiterleitung einer zweiten Domain beim gleichen Pro-
      vider in ein Unterverzeichnis

Aber allgemein interessiert mich, was eigentlich alles mit .htaccess möglich ist.

Gruß
Dirk

  1. Moin!

    kennt jemand eine gute deutschsprachige Dokumentation zu .htaccess-Dateien? http://www.teamone.de/selfaktuell/schroepl01.htm ist mir natürlich bekannt, aber da wird ja leider nur der Passwortschutz beschrieben und gesagt, daß noch einiges mehr möglich ist...

    Außer dem leider nicht... bisher hab' ich da einfach apache.org genommen (ist aber natürlich englisch...)

    Konkret interessieren mich derzeit die Punkte:

    • Vererbung (ist .htaccess für gesamten Verzeichnisbaum
        gültig und wenn ja, können auch nur einzelne Eigen-
        schaften in Unterverzeichnissen geändert werden?)

    Ja. Funktioniert zumindest auf meinem Server wunderbar.

    • Definition eigener Dateien zum Abfangen von Fehlern
        (404 etc.)

    z.B.
    ErrorDocument 404 /errors/notfound.shtml
    Apache bietet einige Umgebungsvariablen für CGI und SSI, die sehr praktisch sind, z.B. <!--#echo var="REQUEST_URI" --> (welche Seite wurde nicht gefunden)
    Ich würde übrigens keine cgi's als Fehlermeldung verwenden, denn was ist, wenn z.B. eine vom Provider aktualisierte Perl-Version eine Macke hat?

    • Anlegen von Subdomains (automatische Weiterleitung
        in Unterverzeichnis oder auf andere Domain)

    Das geht nicht in der .htaccess, sonder entweder per Umleitung mit einem cgi-Script
    (Startseite mit z.B.
    DirectoryIndex index.pl
    ändern)

    oder in der httpd.conf mit
    <VirtualHost subdomain.xyz.de>
    DocumentRoot /dein/verzeichnis/zur/subdomain

    weiteres, wie Zugriffsrechte

    </VirtualHost>

    • Weiterleitung einer zweiten Domain beim gleichen Pro-
        vider in ein Unterverzeichnis

    Wie gesagt: Mit .htaccess alleine geht das nicht... (außer es ist eine neue Apache-Version rausgekommen, die VirtualHost auch dort erlaubt...)

    Aber allgemein interessiert mich, was eigentlich alles mit .htaccess möglich ist.

    Noch sehr praktisch sind z.B.:

    DefaultType ....
    weil viele Provider den MIME-Default auf Textdateien (text/text) lassen, und dadurch bei manchen (Access-)Providern für Übertragungsfehler bei Downloads von unbekannten Formaten sorgen.

    AddType application/font-tdpfr pfr
    Für vom Provider nicht gesetzte MIME-Dateitypen

    AddHandler cgi-script .pl
    Wenn du schon alles auf .pl hast, dein Provider aber nur .cgi als Script interprediert... oder auch .sh für Shell-Scripts, etc...

    Ciao,
    Mirko

  2. kennt jemand eine gute deutschsprachige Dokumentation zu .htaccess-Dateien? http://www.teamone.de/selfaktuell/schroepl01.htm ist mir natürlich bekannt, aber da wird ja leider nur der Passwortschutz beschrieben und gesagt, daß noch einiges mehr möglich ist...

    Aber allgemein interessiert mich, was eigentlich alles mit .htaccess möglich ist.

    Dazu kann ich zwei Sachen sagen:
    a) Bücher über Apache könnte es in Deutsch natürlich geben.
    b) Im englischen Apache-online-Manual ist zu jeder einzelnen Direktive der Webserver-Konfiguration angegeben, wo sie erlaubt ist. Wenn da steht: "Context: .htaccess", dann geht sie eben auch dort.
    Was Dir nicht erspart, das entsprechende Konzept an sich verstanden zu haben (deshalb ggf. das deutsche Apache-Buch suchen) und erst recht nicht, den Webmaster zu fragen, welche .htaccess-features er freigeschaltet hat (Direktive AllowOverride).

    Letzten Endes braucht man für die volle Ausnutzung von .htaccess das volle Verständnis für den Webserver. Eigentlich ist .htaccess ja nur eine Dezentralisierungsform der features - diese muß man also zuerst verstehen.
    Im Prinzip geht in .htaccess fast alles, was regional auf einen Verzeichnisbaum bezogen Sinn macht, und nichts, was den gesamten Webserver betrifft.