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:

This line defines options that will be interpreted by the various configuration files using the   statement to activate or deactivate some part of the whole configuration. We will come back to this where appropriate in the rest of this guide.

Apache server's conventional configuration file - httpd.conf
In fact this file is only an entry point as the whole configuration is split in many files in the directory, that are assembled  together using the   directive. For example, the statement, in , aims at including all the files in  which name ends with.

Taking into account what has been said in the subsection above, and as module configuration files (files in ) almost always start with the, the content of one file inside , will ONLY be assembled with the rest of the configuration, if the matching option is set using a   flag in the APACHE2_OPTS variable in the  file. The configuration file is an exception to this rule as it doesn't start with an   statement and therefore is always included in the resulting configuration.

Standardkonfiguration
After a fresh install of apache server, the configuration resulting from the assemblage of the different configuration files is as follows. We start with the entry point.

Das erste Lebenszeichen
As you can see in the initial configuration above, the pre-installed virtual host's    directory is, its server name is localhost. In addition an index.html file is provided in the  directory, thus to check whether everything is correctly installed or not, point your browser to 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