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:

Before testing if the PHP module works, check that the file exists and contains the following definition:

If it doesn't exist create it yourself.

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
For each virtual host, provide a  directory that is reachable and accessible by the Apache daemon. Add a virtual host configuration file in the  directory which uses this   and the virtual host server name, and don't forget to add an entry for this domain name in.

To assign the apache user/group ownership on the virtual host files, use  like in the following example:

Below are two example virtual host definitions, one for domainname1.com and one for domainname2.com. Notice the different  and   directives even though the host itself  remains the same:

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