Hauptmenü

Untermenü

Einführung - Das Testsystem - Apache

1. Die Konfigurationsdateien

... findet ihr beim XAMPP unter apache\conf, unter Linux lautet der Pfad etc/apache2. Hier müsst ihr nur ein paar Einstellungen vornehmen. Und auch nur, wenn ihr es wirklich wollt. Fragt im Zweifelsfall euren Psychologen.

2. DirectoryIndex

Diesen Eintrag findet ihr in der httpd.conf. Damit legt ihr fest, welche Dateien automatisch dargestellt werden, auch wenn man ihren Namen nicht explizit angibt. Der Standard ist index.html. Wenn ihr mehr haben wollt, also beispielsweise index.htm, index.php oder blubber.htm, so tragt sie dort durch ein Leerzeichen getrennt ein.

3. DocumentRoot

Hier legt man das Wurzelverzeichnis seines Webservers fest. Einfach gesagt bedeutet es, dass ihr alle(!) Internetdateien dort abspeichern müsst. OK, es gibt noch andere Möglichkeiten, aber darauf gehe ich in einem späteren Tutorial ein, das sich mit Virtual Hosts beschäftigt. Außerdem ist das hier kein Kurs für Administratoren, sondern für Entwickler. Und ich will besonders die Anfänger nicht mehr verwirren, als ich es schon tue.

Die Standardeinstellungen

... findet ihr beim XAMPP in der schon bekannten Datei httpd.conf, zumindest unter Windows. Bei einer SuSE-Installation heißt sie dagegen default-server.conf und liegt in selbigem Verzeichnis.

Der Pfad

Beim XAMPP ist es normalerweise xampp/htdocs und unter Linux srv/www/htdocs. Und da müsst ihr nun eure Dateien ablegen. Und zwar alle(!). Wenn ihr denn wollt, so könnt ihr natürlich den Pfad euren Bedürfnissen anpassen. Aber nur, wenn ihr wisst, was ihr tut. Also kommt bitte nicht auf die Idee unter Windows den Ordner "Eigene Dateien" zu nehmen. Das funktioniert nicht, weil es kein physikalischer Pfad ist sondern nur ein Verweise auf einen real existierenden Ordner. Und unter Linux müsst ihr gegebenenfalls noch den Samba-Pfad path = /srv/www/htdocs anpassen. Und natürlich dann neu starten.

4. DirectoryListing

Hierbei handelt es sich um eine Einstellung, in der man festlegen kann, ob der Inhalt eines Ordners auch dann gezeigt wird, wenn dort keine Datei vorhanden ist, die man unter DirectoryIndex angegeben hat. Ihr müsst euch das so vorstellen. Wenn ihr zum Beispiel diesen Link aufruft, so bekommt ihr eine Fehlermeldung à la You don't have permission to access /site/php/ on this server um die Ohren gehauen.

Das hat einen einfachen Grund und zwar ist /site/php/ nur ein Ordner. In dem gibt es zwar diverse Dateien, aber keine lautet index.php oder index.htm(l). Aus Sicherheitsgründen wird daher der Zugriff auf den Ordner mitsamt allen darin enthaltenen Dateien abgeblockt. Diese eigentlich sinnvolle Einstellung kann aber ein wenig nerven, wenn man an mehreren Projekten arbeitet, da man immer den Pfad in der Adressleiste angeben muss. Daher könnt ihr diese Einstellung auf eurem Testsystem getrost ändern. Bitte aber nicht auf einem Live-Server machen, das ist böse, böse.

Die Anpassung

Beim XAMPP befindet sich der entsprechende Abschnitt in der httpd.conf, unter Linux (SuSE) in der default-server.conf. Ihr müsst dort nach einem Eintrag suchen, der in etwa so aussieht:


<Directory [Pfad zum Standardverzeichnis]/>
  ...
</Directory>

Da müsst ihr dann die Einträge wie folgt so anpassen:


Options All
AllowOverwride All
Order allow,deny
Allow from all

Danach könnt ihr euren Apache wieder neu starten, damit die Änderungen wirksam werden. XAMPP-Benutzer machen das über xampp-control und Linux-Leute entweder über die schon erwähnten "Systemdienste" im YaST oder richtig über das Terminal mit rcapache2 restart. Wenn ihr überhaupt nicht mehr weiter wisst, einfach Rechner neu starten.

5. mod_rewrite

Falls jemand dieses Modul für den Apache einrichten möchte, der wird bei der openSuSE wahnsinnig. Vielleicht auch bei anderen Distributionen, aber das kann ich nicht beurteilen. Denn die Konfiguration erfolgt doch tatsächlich in der Datei /etc/sysconfig/apache2. Dort müsst ihr nach dem Abschnitt APACHE_MODULES suchen und da ein rewrite hinzufügen. Bitte aber nicht in den Kommentarbereich, da steht es eh schon. Wer übrigens nicht weiß, um was es sich dabei handelt, der kann dies erst mal ignorieren. Ist im Moment nicht so wichtig.

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt