Apache/de

Der Apache HTTP Server ist ein effizienter und erweiterbarer Web-Server, welcher zu den am häufigsten eingesetzten Web-Servern im Internet zählt.

Unterstützung in anderen Paketen
Das globale USE Flag apache2 aktiviert die Unterstützung vom Apache-Server in anderen Paketen. Dies kann dazuführen, dass das Paket automatisch angezogen wird, sollten sie ein Paket installieren, welches den Apache-Server unterstützt.

Nach dem setzen des globalen USE Flag sollte das System aktualisiert werden, damit die Änderungen im System übernommen werden:

OpenRC
Starten des Apache-Servers:

Apache zum default runlevel hinzufügen:

Neustarten des Apache-Services:

Apache Konfigurationsdateien erneut laden:

systemd
Starten des Apache-Servers:

Apache zum default runlevel hinzufügen:

Neustarten des Apache-Services:

Überprüfung
Überprüfen des IP Interfaces und des Ports, welcher apache2 zugewiesen wurde und auf dem dieser hört:

Überprüfen ob die Verbindung zum Apache-Server auf localhost funktioniert:

Der Verbindungstest kann mit der Tastenkombination + und unterbrochen werden.

Konfigurationsdateien
Es existieren 2 Hauptkonfigurationsdateien, welche das Verhalten des Apache2-Servers auf dem System beeinflussen:


 * Gentoo's apache2 Init-Skript Konfigurationsdatei


 * Übliche Apache-Server Konfigurationsdatei

Gentoo's Init-Skript Konfigurationsdatei
Die einzig aktive Zeile in dieser Datei ist die folgende:

Diese Zeile definiert Optionen, die durch verschiedenen Konfigurationsdateien mit der  Anweisung interpretiert werden, um einen Teil der gesamten Konfiguration zu aktivieren oder zu deaktivieren. Wir werden in der restlichen Anleitung wo es angebracht ist darauf zurückkommen.

Apaches konventionelle Server-Konfigurationsdatei - httpd.conf
In der Tat ist diese Datei nur ein "Einstiegspunkt", da die gesamte Konfiguration in viele Dateien im Verzeichnis aufgeteilt ist. Sie werden mit Hilfe der  direktive zusammengesetzt. Die Anweisung  in  zielt z. B. darauf ab alle Dateien in   einzubinden, deren Name mit  endet.

Unter Berücksichtigung des oben gesagten und weil die Modul-Konfigurationsdateien (in ) fast immer mit dem  beginnen, wird der Inhalt einer Datei in  NUR mit dem Rest der Konfiguration zusammengefügt, wenn die passende Option über das   Flag in der APACHE2_OPTS Variable in der Datei  gesetzt ist. Die Konfigurationsdatei ist eine Ausnahme von dieser Regel, weil sie nicht mit einer   Anweisung beginnt und daher immer in der resultierenden Konfiguration eingebunden ist.

Standardkonfiguration
Nach einer Neuinstallation von Apache Server ist die Konfiguration, die aus der Zusammensetzung der verschiedenen Konfigurationsdateien resultiert, wie folgt. Wir beginnen mit dem Einstiegspunkt.

Das erste Lebenszeichen
Wie Sie in der initialen Konfiguration oben sehen können, ist der vorinstallierte  des virtuellen Hosts. Sein Servername ist "localhost". Zusätzlich ist eine Datei index.html im  Verzeichnis vorhanden. Um zu prüfen, ob alles korrekt installiert ist oder nicht, surfen sie mit Ihrem Browser zur Adresse http://localhost/.

Sie sollten die Nachricht "It works !" auf der Webseite sehen.

Sicherheitsmodule aktivieren
Das Verhalten des Moduls kann durch anpassen der Dateien und  gesteuert werden. Im Anschluss hieran, muss der Apache-Server neugestartet werden.

PHP Unterstützung aktivieren
Installieren Sie PHP mit dem apache2 USE Flag und aktivieren Sie das Modul:

Vor dem Test ob das PHP Modul funktioniert, prüfen Sie dass die Datei existiert und die folgende Definition enthält:

Wenn die Datei nicht vorhanden ist, erstellen Sie sie selbst.

Um zu überprüfen ob das PHP Modul korrekt funktioniert, erstellen Sie eine Testseite:

Löschen oder Ändern Sie den Namen der Datei und öffnen Sie im Anschluss hieran die Testseite: http://localhost/. Es sollte eine Tabelle mit einer Beschreibung der PHP Einstellungen erscheinen.

Hinzufügen eigener virtueller Hosts
Erstellen Sie für jeden virtuellen Host ein  Verzeichnis, das für den Apache-Daemon erreichbar und zugänglich ist. Fügen Sie eine Konfigurationsdatei für den virtuellen Host im Verzeichnis  hinzu, welches dieses   verwendet und den virtuellen Host Servernamen. Vergessen Sie außerdem nicht, einen Eintrag für diesen Domainnamen in hinzuzufügen.

Um die Apache user/group Zugehörigkeit der virtuellen Host Dateien zuzuweisen, verwenden Sie  wie in folgendem Beispiel:

Es folgen zwei Beispiel-Definitionen für Virtuelle Hosts. Eine für domainname1.com und eine weitere für domainname2.com. Beachten Sie die unterschiedlichen  und   Anweisungen, auch wenn der Host selbst  der gleiche bleibt:

Es wird empfohlen, ebenfalls eine IP-basierte Virtuelle Host Definition anzubieten. Dies ermöglicht es dem Administrator eine Nachricht für Benutzer aufzusetzen, die versuchen eine Website durch ihre IP-Adresse zu erreichen:

Nach dem Einfügen Virtueller Hosts muss der Server neu gestartet werden, damit die neuen Seiten aktiv werden.

PHP aktivieren durch fcgid
Installiere und. Das PHP Paket benötigt das cgi USE flag:

Bearbeiten Sie die Datei :

Erstellen Sie das benötigte Verzeichnis:

Erstellen Sie für den PHP-Wrapper einen symbolischen Link:

Aktivieren Sie das fcgid Modul:

Starten Sie abschließend den Apache Server neu und überprüfen Sie die zuvor erzeugte  Seite. Der Wert von  sollte CGI/FastCGI sein.

PHP-FPM durch mod_proxy_fcgi in Apache 2.4 aktivieren
Mit PHP 5.3 und höher unterstützt PHP den zusätzlicher Modus FastCGI Process Manager oder FPM.

Die folgende Methode beruht auf der FilesMatch Richtlinie und sitzt innerhalb der Konfiguration des Hauptservers oder der Virtuellen Hosts. Die Lage des UNIX Socket wird durch die Listen Direktive in bestimmt. Dies erlaubt die Angabe separater Pools pro Seite/Funktion.

Im folgenden Beispiel, ist es innerhalb der PHP Modul Config Datei:

Aktivieren Sie dann sowohl das PHP- als auch das Proxy-Modul:

Fehlersuche

 * Anleitung zur Fehlersuche

Häufige Probleme
Beim Starten des Apache-Server erscheint folgende Fehlermeldung:

apache2: apr_sockaddr_info_get failed for SomeHostname

Sollte dies geschehen, fügen Sie den Hostnamen in die Datei ein.

Siehe auch

 * Lighttpd - ein schneller, schlanker Webserver.
 * Nginx - ein schneller, robuster und hochleistungsfähiger HTTP-Server

Weblinks

 * Slicehost article: Installing Apache on Gentoo
 * Slicehost article: Apache configuration files on Gentoo
 * Slicehost article: Configuring the Apache MPM on Gentoo
 * Slicehost article: Apache configuration on Gentoo
 * Slicehost article: Apache Virtual Hosts on Gentoo
 * Slicehost article: Enabling and using apache's mod_status on Gentoo
 * apache.org documentation
 * Apache2 mod_pagespeed