Kapitel 30. Der Webserver Apache

Inhaltsverzeichnis

30.1. Grundlagen
30.2. HTTP-Server mit YaST einrichten
30.3. Apache-Module
30.4. Threads
30.5. Installation
30.6. Konfiguration
30.7. Apache im Einsatz
30.8. Aktive Inhalte
30.9. Virtuelle Hosts
30.10. Sicherheit
30.11. Fehlerbehebung
30.12. Weitere Dokumentation

Zusammenfassung

Mit einem Anteil von über 60 Prozent (laut http://www.netcraft.com) ist Apache der weltweit am weitesten verbreitete Webserver. Für Web-Anwendungen wird Apache häufig zusammen mit Linux, der Datenbank MySQL und den Programmiersprachen PHP und Perl eingesetzt. Für diese Kombination hat sich die Abkürzung LAMP eingebürgert.

In diesem Kapitel wird der Webserver Apache vorgestellt. Neben Hinweisen zur Installation und Konfiguration finden Sie hier auch die Beschreibung einiger Module sowie eine Reihe von Varianten für virtuelle Hosts.

30.1. Grundlagen

Dieser Abschnitt vermittelt ein grundlegendes Verständnis von Webservern und den Protokollen, die sie benutzen. Außerdem werden die wichtigsten Eigenschaften vorgestellt.

30.1.1. Webserver

Ein Webserver liefert auf Anfrage eines Clients HTML-Seiten an diesen aus. Diese Seiten können in einem Verzeichnis auf dem Server abgelegt sein (sogenannte passive oder statische Seiten) oder als Antwort auf die Anfrage neu generiert werden (aktive Inhalte).

30.1.2. HTTP

Bei den Clients handelt es sich meist um Webbrowser wie Konqueror und Mozilla. Die Kommunikation zwischen Browser und Webserver findet über das HyperText Transfer Protocol (HTTP) statt. Die aktuelle Version HTTP 1.1 ist im RFC 2068 sowie im Update RFC 2616 dokumentiert, diese RFCs findet man unter der URL http://www.w3.org.

30.1.3. URLs

Ein Client fordert über eine URL eine Seite vom Server an, zum Beispiel http://www.novell.com/de-de/linux/suse/index.html Eine URL besteht aus folgenden Komponenten:

Protokoll

Häufig benutzte Protokolle:

http://

Das HTTP-Protokoll

https://

Sichere, verschlüsselte Version von HTTP

ftp://

Dateitransferprotokoll für den Download und Upload von Dateien

Domain

In diesem Fall www.novell.com. Die Domain kann man nochmals unterteilen, der erste Teil www verweist auf einen Computer, der zweite Teil novell.com ist die eigentliche Domain. Beides zusammen wird auch als FQDN (Fully Qualified Domain Name) bezeichnet.

Ressource

In diesem Beispiel /de-de/linux/suse/index.html. Dieser Teil gibt den kompletten Pfad zur Ressource an. Die Ressource kann eine Datei sein, wie hier der Fall ist. Es kann sich auch um ein CGI-Skript, eine JavaServer-Seite usw. handeln.

Dabei wird die Weiterleitung der Anfrage an die Domain www.novell.com von den entsprechenden Mechanismen des Internet, wie dem Domain Name System (DNS) übernommen, die den Zugriff auf eine Domain an einen oder mehrere dafür zuständige Rechner weiterleiten. Apache liefert dann die Ressource aus seinem Dateiverzeichnis aus, hier die Seite index.html. Die Datei kann auf der obersten Ebene des Verzeichnisses oder in einem Unterverzeichnis liegen.

Der Pfad der Datei ist dabei relativ zur sogenannten „DocumentRoot“ angegeben, die man in der Konfigurationsdatei ändern kann. Abschnitt 30.6.2.1, „DocumentRoot“ beschreibt, wie dabei vorzugehen ist.

30.1.4. Automatische Ausgabe einer Standardseite

Die Angabe der Seite kann fehlen. Apache hängt dann automatisch einen der gebräuchlichen Namen für solche Seiten an die URL an. Der gebräuchlichste Name für eine solche Seite ist index.html. Ob Apache diesen Automatismus ausführt und welche Seitennamen dabei berücksichtigt werden, lässt sich einstellen. Dies ist in Abschnitt 30.6.2.7, „DirectoryIndex“ beschrieben. In diesem Fall reicht dann beispielsweise der Aufruf von http://www.suse.de, um vom Server die Seite http://www.novell.com/de-de/linux/suse/index.html geliefert zu bekommen.


SUSE LINUX Administrationshandbuch 9.3