Teil von SELFHTML aktuell Teil von Artikel Teil von Server

Server:
Aliasing von Webverzeichnissen

nach unten Achim Schrepfer
nach unten Hinweise zum Thema
nach unten Beispiel mit Erläuterungen
nach unten Weiterführende Links

Achim Schrepfer

E-Mail: E-Mail selfeature@speedesign.de
Homepage-URL: deutschsprachige Seite http://www.speedesign.de/

Bei Fragen zu diesem Beitrag bitte den Autor des Beitrags kontaktieren!

nach obennach unten

Hinweise zum Thema

Der englischsprachige Seite Apache-Webserver ist ja bekannt für seine flexiblen Konfigurationsmöglichkeiten. Eine häufig verwendete Option dieses Servers ist das Modul mod_alias welches in der Standarddistribution der Software mitgeliefert wird. Es ermöglicht unter anderem das Einblenden von lokalen Verzeichnissen in den Web-Verzeichnis-Baum. Diese Alias-Funktionalität kann man zum Beispiel für serverweite bereichsübergreifende Seite CGI-Skripte verwenden. Dazu wird ein zentrales Verzeichnis auf dem Server-Rechner angelegt, welches alle Skripten enthält. Mittels ScriptAlias-Direktive wird dieses Verzeichnis im Web (ggf. bei allen virtuellen Hosts) verfügbar gemacht.

Das folgende, etwas komplexere Beispiel dient zum Aufbau eines Service-Bereichs für alle virtuellen Hosts. In diesem Service-Bereich soll es eine Startseite, eine Statistikseite und einen Bereich mit Cliparts geben. Vom Prinzip her wird so bei vielen Internet-Providern verfahren. Das Verzeichnis /usr/local/docroot-service/ enthält die Dateien des Wurzelverzeichnisses unseres Servicebereichs. Dieses soll erreichbar sein unter http://domainname.tld/service/. Das Verzeichnis /usr/local/stat-software/ enthält die CGI-Skripten für das Statistiktool. Es soll innerhalb des Servicebereichs unter http://domainname.tld/service/statistik/ erreichbar sein. Das dritte Verzeichnis /data/all-users/cliparts/ enthält Web-Clipart und soll unter http://domainname.tld/service/clipart verfügbar gemacht werden.

Unser Service-Bereich soll natürlich ggf. von allen virtuellen Hosts des Servers aus erreichbar sein, weshalb die folgenden Konfigurationen in der Main Server Configuration (so wird sie in der Standard-Konfiguration des Apache genannt) eingebaut werden müssen. Das Beispiel zeigt eine Alias-Konstruktion für unseren Service-Bereich.

Beachten Sie, dass dies nur ein Beispiel für die Alias-Konstruktion im Apache ist. Es werden grundlegende Kenntnisse des Apache-Servers und seiner Konfiguration vorausgesetzt. Das Beispiel wurde getestet mit der Apache-Version 1.3.26.

nach obennach unten

Beispiel mit Erläuterungen

Beispiel

## Alias für den Statistikbereich
ScriptAlias /service/statistik /usr/local/stat-software
<Directory /usr/local/stat-software>
    Options All

    #Authentikation eines Webusers erforderlich
    AuthUserFile /usr/local/http-auth/htpasswd
    AuthName ByPassword
    AuthType Basic

    <Limit GET>
            Require valid-user
    </Limit>
    #Ende Webuser-Authentikation

    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

## Alias für die Clipart-Bibliothek
Alias /service/clipart /data/all-users/cliparts
<Directory /data/all-users/clipart>
    Options MultiViews

    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

## Standardalias für Service-Bereich
Alias /service /usr/local/docroot-service
<Directory /usr/local/docroot-service>
    Options Indexes MultiViews

    #Authentikation eines Webusers erforderlich
    AuthUserFile /usr/local/http-auth/htpasswd
    AuthName ByPassword
    AuthType Basic

    <Limit GET>
            Require valid-user
    </Limit>
    #Ende Webuser-Authentikation

    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Erläuterung:

Das Beispiel richtet die drei oben genannten Aliase ein. Der erste Abschnitt mit der ScriptAlias-Direktive verweist auf das Verzeichnis mit den CGI-Skripten des Statistiktools. Innerhalb der Directory-Direktive wird festgelegt, dass für den Zugriff ein authentisierter Benutzer vorhanden sein muss. Die Benutzer unseres Servicebereichs sind in der Datei /usr/local/http-auth/htpasswd gespeichert. Für weitere Informationen dazu lesen Sie bitte die beiden nach unten htaccess-Featureartikel von Michael Schröpl. Hier wird vorausgesetzt, dass das Skript für die Statistikauswertung auch den HTTP-Benutzer und die Domain, von der es aufgerufen wird, berücksichtigt. Statistik-Tools wie z.B. englischsprachige Seite AWStats unterstützen dies und sind somit geeignet für diese Vorgehensweise. Denn je nach Benutzername und Domain müssen natürlich andere Statistiken ausgegeben werden.

Der zweite Abschnitt stellt die Clipart-Seiten im Service-Bereich bereit. Das Verzeichnis /data/all-users/cliparts/ sollte dazu natürlich Übersichtsseiten in HTML enthalten. Die Ausführung von CGI-Skripten ist in diesem Verzeichnis nicht erlaubt. Solche Verzeichnisse können natürlich noch mehr enthalten. Beispielsweise Dokumentationen, Hotline-Nummern und vieles mehr.

Der dritte Abschnitt stellt den übergeordneten Service-Bereich zur Verfügung. Auch hier ist in jedem Fall eine Authentikation erforderlich. Dazu wird dieselbe Benutzerdatei (/usr/local/http-auth/htpasswd) wie im Statistik-Bereich verwendet. Dieses Vorgehen verhindert Redundanzen bei der Pflege der Benutzerliste.

Beachten Sie:

In unserem Beispiel ist das wichtigste die Reihenfolge der Alias-Direktiven. Die untergeordneten Bereiche müssen immer als erstes eingerichtet werden. Der Versuch, zuerst das /service/-Alias und danach z.B. /service/statistik/ einzurichten schlägt fehl. Zwar gibt der Apache keinen Fehler aus, aber im Web wäre in diesem Fall nur der /service/-Bereich verfügbar, nicht aber /service/statistik/.

Die Funktionen des mod_alias-Moduls sind äußerst mächtige Werkzeuge. Vor allem für Administratoren von Webservern mit mehreren virtuellen Hosts ist der gezielte Einsatz von Aliasen eine enorme Arbeitserleichterung.

nach obennach unten

Weiterführende Links

Die folgenden Stellen werden empfohlen, um das obige Beispiel besser zu verstehen, oder um weitere Möglichkeiten und Details zu erfahren.

englischsprachige Seite mod_alias-Dokumentation
Seite .htaccess-Zugriffskontrolle (Michael Schröpl)
Seite .htaccess-FAQ (Michael Schröpl)

Teil von SELFHTML aktuell Teil von Artikel Teil von Server

© 2007 bereichsübergreifende Seite Impressum