Kapitel 46. Der Webserver Apache

Inhaltsverzeichnis

46.1. Vorwort und Terminologie
46.2. Installation
46.3. Konfiguration
46.4. Virtuelle Hosts
46.5. Apache-Module
46.6. Sicherheit
46.7. Fehlerbehebung
46.8. Weitere Informationen

Zusammenfassung

Mit einem Anteil von über 60 Prozent (laut http://www.netcraft.com) ist Apache der weltweit am weitesten verbreitete Webserver. In Linux wird Apache für Webanwendungen häufig mit 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 Version 2.x des Web- und Anwendungsservers Apache vorgestellt. Neben Hinweisen zur Installation und Konfiguration von Apache finden Sie hier auch die Beschreibung einiger seiner Module.

46.1. Vorwort und Terminologie

Dieser Abschnitt definiert Begriffe, die in Verbindung mit dem Web, insbesondere aber in Zusammenhang mit Apache häufig genannt werden.

[Important]Terminologie

Apache bezieht sich in diesem Dokument auf Apache Version 2.x. Informationen zu Apache 1.x finden Sie unter http://httpd.apache.org/docs/.

46.1.1. Webserver

Ein Webserver stellt auf Anfrage eines Clients Webseiten bereit. Beim Client kann es sich um einen Webbrowser wie Konqueror oder um jedes andere Gerät handeln, das eine Verbindung mit dem Internet herstellen kann. Diese Seiten können als Ganzes auf der Festplatte gespeichert werden (statische Seiten) oder als Ergebnis der Abfrage einer externen Entity, beispielsweise einer Datenbank oder eines Webdienstes, generiert werden (dynamische Seiten).

46.1.2. HTTP

Die Kommunikation zwischen dem Client und dem Webserver erfolgt über HTTP (Hypertext Transfer Protocol). Die aktuelle Version, HTTP 1.1, ist in RFC 2068 und dem zugehörigen Update RFC 2616 dokumentiert. Diese RFCs stehen unter http://www.w3.org zur Verfügung.

46.1.3. URLs

URL ist die Abkürzung von „Universal Resource Locator“, einer eindeutigen Adresse im Internet. Clients verwenden URLs, beispielsweise http://www.example.com/index.html, zur Anforderung von Seiten von einem Server. Eine URL besteht aus folgenden Komponenten:

Protokoll

Gängige Protokolle:

http://

Das HTTP-Protokoll.

https://

Sichere, verschlüsselte Version von HTTP.

ftp://

FTP steht für „File Transfer Protocol“ und ist ein Übertragungsprotokoll für das Downloaden und Uploaden von Dateien.

Domäne

In diesem Beispiel lautet die Domäne www.beispiel.com. Die Domäne ist der zu einer IP-Adresse gehörende Name. www.beispiel.com lässt sich daher eindeutig einer IP-Adresse, zum Beispiel 123.456.789.1, zuordnen. Die Zahl hingegen ist die eindeutige Kennzeichnung des Computers, auf dem ein Webserver läuft. Die Zuordnung eines Domänennamens zu seiner IP-Adresse wird auch als Namensauflösung bezeichnet. Ein Domänenname ist in mehrere Komponenten unterteilt. Diese sind in unserem Beispiel: www, beispiel und com. Der letzte Teil des Domänennamens ist die Top-Level-Domäne (TLD). In unserem Beispiel ist com die TLD. Die TLD stellt die oberste Ebene des Namensauflösungsprozesses dar. TLDs können generisch sein (gTLDs), wie com, org und net, oder landesspezifisch (ccTLDs), wie de für Deutschland. Alle Teile einer Domäne gemeinsam werden als vollständig qualifizierter Domänenname (FQDN, Fully Qualified Domain Name) bezeichnet.

Ressource

In diesem Beispiel lautet die Ressource index.html. Dieser Teil gibt den vollständigen Pfad einer Ressource an. Bei der Ressource kann es sich, wie in diesem Beispiel, um eine Datei handeln. Es kann sich aber auch um ein CGI-Skript, eine JavaServer-Seite oder jede andere Ressource handeln.

Der verantwortliche Internet-Mechanismus, beispielsweise das Domain Name System (DNS), leitet eine Anfrage nach der Domäne www.beispiel.com an einen oder mehrere Computer weiter, auf denen sich die Ressource befindet. Apache liefert daraufhin die betreffende Ressource, im Beispiel die Seite index.html, an den Client zurück. In unserem Beispiel befindet sich die Datei im Top-Level-Verzeichnis. Ressourcen können sich aber auch in Unterverzeichnissen (z. B. in http://www.example.com/linux/novell/suse) befinden.

46.1.4. Direktive

Bei der Konfiguration von Apache wird der Begriff Direktive häufig als Synonym für „Konfigurationsoption“ verwendet. Direktive ist ein spezieller, in Verbindung mit dem Apache-Webserver verwendeter technischer Begriff.