% master: httpd_conf.tex
% httpd.conf v0.1
% 2011-06-01 (Rx)

\subsection{httpd.conf}
%----------------------

\begin{verbatim}
ServerType standalone           Apache nicht ueber den inetd starten.

ServerRoot "/www/"              Diese Einstellung sorgt dafür, dass der Apache
                                ausgehend von diesem Verzeichnis die
                                Verzeichnisse fuer Dokumente, Logfiles und
                                Konfigurationsdateien sucht.

LockFile /var/lock/subsys/httpd/httpd.accept.lock       Spezifizert das Lock
                                                        File.

PidFile /var/run/httpd.pid      Datei, in der sich die Prozess ID des Httpd-
                                Daemons befindet.

ResourceConfig /etc/httpd/srm.conf      Diese Datei enthaelt Angaben zur
                                        Formatierung und dem Aussehen der
                                automatisch erzeugten Verzeichnisindizes
                                (FancyIndexing) sowie Angaben zu den einzelnen
                                Dateitypen.

AccessConfig /etc/httpd/access.conf     Datei zur Definition der Funktionen und
                                        Zugriffsrechte bestimmter Verzeichnisse

Timeout 300                     Zeitlimit fuer Client-Anfragen in Sekunden.

KeepAlive On                    Unterstuezung der HTTP/1.1 Persistent
                                Connections. Dardurch koennen ueber eine TCP-
                                Verbindung mehrere Anfragen an den Server
                                geschickt werden.

MaxKeepAliveRequests 10         Es werden 10 aufeinanderfolgende Anfragen
                                innerhalb einer Keep-Alive-Verbindung erlaubt.

KeepAliveTimeout 15             Der Server wartet maximal 15 Sekunden auf
                                weitere Anfragen des Clients bei einer Keep-
                                Alive-Verbindung.

MinSpareServers 5               Es existieren immer mindestens 5 und hoechstens
MaxSpareServers 10              10 leerlaufende Prozesse.

StartServers 5                  Es werden automatisch 5 Kindprozesse des Apache
                                gestartet.

MaxClients 150                  Maximum von gleichzeitig laufenden
                                Server-Prozessen.

MaxRequestsPerChild 30          Nach 30 Anfragen wird der Kindprozess beendet
                                und gegebenfalls ein neuer gestartet.

Listen 12.34.56.78:80           Falls mehrere Interfaces bzw. IP Adressen fuer
                                den Rechner vorhanden sind, kann mit Listen
                                festgelegt werden, welche Ports fuer welche
                                Adresse abgehoert werden sollen.

Port 80                         Standalone Server Port 80

User wwwrun                     Nach dem Oeffnen des Ports (als root), wechselt
Group nogroup                   Apache zu der als User und Group angegebenen
                                UID bzw. GID. Die Zuweisung kann entweder durch
                                angeben des Namens oder durch # gefolgt von der
                                ID erfolgen.

ServerAdmin dv@mynet.loc        Bei Fehlermeldungen wird diese Adresse dem
                                Client zurueckgeliefert.

ServerName www.mynet.loc        Wird bei Redirects benoetigt (wenn man
                                beispielsweise durch Eingabe von
                                http://www.mynet.loc/main auf das Verzeichnis
                                main zugreifen will, erzeugt der Apache einen
                                Redirect auf http://www.mynet.loc/main/ . Ohne
                                ServerName würde der richtige Hostname des
                                Rechners zurückgeliefert werden.

DocumentRoot "/www/htdocs/"     Hier werden die HTML Seiten abgelegt.

AllowOverride All               Konfigurationsanweisungen in der .htaccess
                                beachten

UserDir public_html             Homepage-Directory der Benutzer
                                http://server/~benutzer/

DirectoryIndex index.html index.htm index.php   Wird nur ein Directory
                                                angegeben, wird automatisch die
                                angegebene Datei gesucht und angezeigt.

AccessFileName .htaccess        Name der .htaccess

DefaultType text/plain          Dateien ohne Endung werden wie Text-Files
                                behandelt.

HostnameLookups Off             Es sollen keine DNS-Lookups ausgefuert werden.

ErrorLog /var/log/httpd/error_log       Datei zur Aufnahme von Fehlermeldungen
                                        und sonstigen Info Meldungen
                                (mod_log_config).

LogLevel warn                   LogLevel :-) debug, info, notice, warn, error,
                                crit,alert,emerg.

LogFormat ...                   Legt das Format der Logdatei(en) fest.

CustomLog /var/log/httpd/access_log common      Erzeugt die Datei http.access im
                                                Common Log Format.

ServerSignature Off             ServerSignature kann man auf "Off" stellen,
                                damit ein Zugriff auf eine nichtexistente Seite
                                nicht Software und Versionsnummer anzeigt,
                                jedoch bringt das nicht allzuviel, da im HTTP
                                Header diese und wesentlich mehr Informationen
                                zu finden sind.

Alias /icons/ "/www/icons/"     Alias-Namen fuer bestimmte Verzeichnisse. Diese
                                werden anschliessend behandelt, als wenn sie
                                sich unter Document-Root befinden wuerden.
                                Achtung! Die Einstellungen gelten auch fuer
                                virtuelle Hosts.

IndexOptions FancyIndexing      Als Optionen sind angebbar:
                                Fancyindexing - ausführliche Verzeichnisliste
                                  (Icons, Name, Größe, Kurzbeschreibung etc.)
                                SuppressLastModified - keine Angabe der letzten
                                  Modifikationszeit
                                SuppressSize - keine Angabe der Filegröße
                                SuppressDescription - keine Angabe einer
                                  Kurzbeschreibung
                                ScanHTMLTitles - HTML-Titel als Kurzbeschreibung
                                  (Achtung: Rechnerlast!)

ReadmeName README               Die Datei README wird bei der Ausgabe des
                                Verzeichnisbaums angezeigt.

HeaderName HEADER               Die Datei HEADER wird am Anfangs-Tag in den
                                Verzeichnisbaums angezeigt.

IndexIgnore .??* *~ *#   RCS CVS *,v *,t        Diese Dateien werden nicht durch
                                                FancyIndexing angezeigt.

TypesConfig /etc/httpd/mime.types       Enthaelt die Zuweisungen Dateiendung
                                        zu Mime-Typ

BrowserMatch "Mozilla/2" nokeepalive    Hiermit wird der Apache angewiesen, auf
                                        bestimmte Browser unterschiedlich zu
                                        reagieren.
\end{verbatim}

