Kontakt aufnehmen

Apache: Grundkonfiguration

Die Datei httpd.conf im conf Unterverzeichnis der Installation enthält alles womit der Apache konfiguriert werden kann. Somit ist sie eine der wichtigsten Dateien für den Apache Server. Die komplette Liste würde ca. 200 Einstellungen umfassen.
Folgend stellen wir Ihnen die wichtigsten Konfigurationsanweisungen für den Apache 2.0 in der Reihenfolge vor, wie sie auch in der httpd.conf zu finden sind. Das Rautezeichen (#) hat in der Konfiguration die Bedeutung eines Kommentars, d.h. Zeilen die mit # anfangen werden nicht berücksichtigt.

Bei den Beispielen wird ein Linux Betriebssystem verwendet, was auch an den Pfadangaben zu erkennen ist. Unter Windows werden Pfadangaben am besten in Anführungsstrichen und mit einem Slash statt einem Backslash geschrieben. Also z.B. "C:/Programme/ Apache Group/ Apache 2".

Anweisungen werden grundsätzlich Zeilenweise geschrieben, d.h. für jede Anweisung ist eine einzelne Zeile zu verwenden. Leerzeilen und Zeilen die mit dem Rautezeichen beginnen werden ignoriert.

Hinweis: Der Strich/Pipe (|) bei einigen Anweisungen bedeutet, dass hier eine alternative Auswahl getroffen werden kann. Beispiel:

ExtendedStatus On | Off #Off = default)

Bedeutet, dass entweder On oder Off verwendet werden kann, die Anweisung lautet dann also entweder

ExtendedStatus On

oder

ExtendedStatus Off

Hinweis: Bei den meisten Beispielen ist in der ersten Beispielzeile ein Kommentar angegeben, in welchem Kontext die jeweilige Direktive eingesetzt werden kann. So können manche Direktiven nur global, andere in Bezug auf Verzeichnisse oder dergleichen eingesetzt werden.

ServerRoot

Dies ist die Angabe des Hauptinstallationsverzeichnisses des Apache Webservers. Sie kann nur einmal in der Serverkonfiguration verwendet werden. Nach der Installation ist sie eigentlich schon richtig eingestellt.

#ServerKontext
ServerRoot /usr/localh/apache2

ScoreBoardFile

Die ScoreBoard-Datei dient zur Speicherung von serverinternen Prozessinformationen. Im Normalfall ist sie auskommentiert und der Apache legt diese Informationen im Hauptspeicher ab. Sollte eine Datei benötigt werden kann das Kommentarzeichen einfach entfernt und der Pfad an die Bedürfnisse angepasst werden.

#ServerKontex
ScoreBoardFile /usr/local/apache2/log/scoreboard.log

PidFile

In dieser Datei wird die Prozess-ID des Apache Webservers gespeichert. Diese dient z.B. anderen Programmen um den Apache starten und stoppen zu können.

#ServerKontext
PidFile /usr/local/logs/pidfile.pid

TimeOut

Das Timeout bestimmt ein Zeitlimit für Clientanfragen bevor serverseitig die Verbindung geschlossen wird.

#ServerKontext
Timeout 300 # (300 Sekunden ist auch die Standardeinstellung)

KeepAlive

Aktiviert oder deaktiviert dauerhafte TCP/IP Verbindungen für Clientanfragen. D.h. es können mehrere Anfragen eines Clients über eine bereits geöffnete TCP/IP Verbindung getätigt werden. Als ergänzende Einstellungen gibt es auch KeepAliveRequests und KeepAliveTimeouts.

#ServerKontext
KeepAlive On   
# (On oder Off; On = default)

KeepAliveRequests 100   
# (100 erlaubte Anfragen auf einer TCP/IP Verbindungen)

KeepAliveTimeout 15   
# (15 Sekunden Wartezeit für erneute Anfragen über 
# eine dauerhafte TCP Verbindung)

Listen

Legt fest auf welcher IP Adresse und auf welchem Port der Server auf Verbindungen wartet. Bei der Angabe eines einzelnen Ports wird automatisch auf allen verfügbaren IP Adressen gewartet. Mit dem Apache 2.x werden auch IPV6 Adressen unterstützt. Die Listen Angabe ist "stärker" als ServerName, bei 2 verschiedenen IP Adressen und/oder Ports sollten mehrere Listen Angaben eingesetzt werden.

#ServerKontext
Listen 80
Listen 192.168.0.1:80

IPv6-Adressen werden dabei innerhalb von eckigen Klammern geschrieben, also z.B. [fe80::a00:20ff:fea7:ccea]:80.

LoadFile

Bindet externe Bibliotheken oder Objektdateien in den Server ein. Diese Direktive hängt mit der Moduleinbindung zusammen und aus der Moduldokumentation ist zu entnehmen ob und welche Dateien eventuell geladen werden müssen.

#ServerKontext
LoadFile "C:/Path/to/Perl/bin/perl58.dll"

LoadModule

Bindet externe Module in den Server ein. Dies ist die Hauptdirektive um den Apache um Module zu erweitern. Wie das Modul fachgerecht eingebunden werden muss steht meistens in der Moduldokumentation. Beim Apache 1.3.xx ist es teilweise so das auf eine bestimmte Reihenfolge der Module geachtet werden muss damit diese richtig geladen werden. Der Apache 2 überwacht und steuert das ganze selbständig. Aus diesem Grund gab es früher auch die Befehle ClearModule und AddModule die jetzt überflüssig sind.

#ServerKontext
LoadModule interner_Modulname Modulpfad/moduldateiname

ExtendedStatus

Bietet in Verbindung mit mod_status eine erweiterte Statusseite.

#ServerKontext
ExtendedStatus On | Off #Off = default

ServerAdmin

Angabe einer administrativen E-Mail-Adresse. (Erscheint z.B. bei Fehlern.)

#ServerKontext, VirtualHostKontext
ServerAdmin webmaster@servername.org

ServerName

Angabe des Servernamens des Webservers. Am besten einen FQDN (Full Qualified Domain Namen) Rechner.Domain.Länderkennung. Ab Version 2.0 kann hiermit auch gleich der Port angegeben werden und löst damit die Direktive Port ab.

#ServerKontext, VirtualHostKontext
ServerName www.domain.org

UseCanonicalName

Bestimmt die Art und Weise, wie der Server seinen Namen und Port feststellt.

#ServerKontext, VirtualHostKontext, 
#<Directory> Container, .htaccess
UseCanonicalName On | Off | DNS

On - Der Server nimmt den Name aus der Direktive ServerName (default)
Off - Der ServerName wird aus den gesendeten Informationen des Clients ermittelt, sendet dieser keine ausreichenden Informationen wird auf den Inhalt von ServerName zurückgegriffen
DNS - Bei DNS startet der Server einen "Reverse DNS Lookup" der IP-Adresse um den Domainname herrauszufinden.

DocumentRoot

Bestimmt das Hauptverzeichnis für Dokumente die der Webserver ausliefert.

#ServerKontext, VirtualHostKontext
Documentroot /usr/local/apache2/htdocs
# (kann auch mit -htdocsdir bei der Übersetzung bestimmt werden)

HostnameLookups

Schaltet die Auflösung der Client IP Adressen in deren Hostnamen an oder aus.

#ServerKontext, VirtualHostKontext, 
#<Directory>, <Location>, <Files>, .htaccess
HostnameLookups On | Off | double

On - Der Server bestimmt bei jeder Anfrage den Hostnamen des Clients aufgrund der IP
Off - Keine Bestimmung des Hostnamens
Double - Doppelte Auflösung: 1. Nachschlagen welcher Hostname zur IP gehört 2. Nachschlagen welche IP zu dem Hostnamen gehört

ServerAlias

Definiert alternative Hostnamen für einen Server.

#VirtualHostKontext
<VirtualHost *>
  ServerName www.servername.org
  ServerAlias servername.org webserver.servername.org
</VirtualHost>

Funktioniert auch als:

ServerAlias *.servername.org 
#(damit auch unter www, irgendwas, etc. erreichbar)

ServerTokens

ServerTokens bestimmt welche Angaben der Server im HTTP-Header mit sendet.

#ServerKontext
ServerTokens Minimal | ProductOnly | OS | Full 

Minimal - Der Server sendet den Namen der Serversoftware sowie die Versionsnummer
ProductOnly - Der Server sendet nur den Namen der Serversoftware
OS - Der Server sendet den Namen und die Versionsnummer der Serversoftware sowie des Betriebssystems
Full - Der Server sendet den Namen und die Versionsnummer der Serversoftware sowie das Betriebssystem und die zu Verfügung stehenden Module und Erweiterungen. (default)

ServerSignature

Angabe einer Fußzeile bei serverseitig generierten Dokumenten wie Fehlermeldungen oder Indexdateien.

#ServerKontext, VirtualHostKontext, <Directory>, .htaccess
ServerSignature On | Off | Email

On - zeigt die Version des Apache und den Namen des Servers (default)
Email - zeigt zusätzlich zu On die E-Mailadresse die in der Direktive SeverAdmin angegeben ist
Off - abgeschaltet

Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.

Weiterlesen: ⯈ Verzeichniseinstellungen

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Cookie-Einstellungen

Helfen Sie dabei, uns noch besser zu machen. Wir nutzen Cookies und ähnliche Technologien, um die Website auf Ihre Bedürfnisse anzupassen. Zur Datenschutzerklärung

Auswahl speichern