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:

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:

It is recommended to provide an IP based virtual host definition as well. This allows the administrator to put up a message for users that try to reach a site through its IP address:

After inserting virtual hosts, the server needs to be (gracefully) restarted for the new sites to become active.

Enabling PHP through fcgid
Install and. The PHP package requires the cgi USE flag:

Edit the file:

Create the needed directory:

Symlink it for the PHP wrapper:

Enable the fcgid module:

Finally restart Apache and check the  site created earlier. The value of  should be CGI/FastCGI

Enabling PHP-FPM through mod_proxy_fcgi in Apache 2.4
With PHP 5.3 and above, PHP supports an additional mode, FastCGI Process Manager, or FPM.

The following method relies on the FilesMatch directive and be placed within the main server config or VirtualHosts. The location of the UNIX socket is determined by the listen directive in the, allowing for specifying separate pools per site/function.

In the following example, it is placed within the PHP module config file.:

Then enable both the PHP and proxy modules:

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