Debian’s default Apache2 Installation¶
Eine detallierte Beschreibung der Apache2 Konfigration unter Debian (Ubuntu)
findet sich in der Datei /usr/share/doc/apache2/README.Debian.gz. Sie besteht
aus einer Ordnerstruktur im Ordner /etc/apache2/
und ein paar Tools.
Die WEB-Anwendungen eines HTTP-Servers sind in Sites aufgeteilt, die bei Bedarf aktiviert (enabled a2ensite) oder auch deaktiviert (disabled a2dissite) werden können. In gleicher Weise werden auch die Module des Apache Servers aktiviert (a2enmod) oder deaktiviert (a2dismod). Neben Sites und Modulen gibt es noch Konfigurationen, die sich nicht auf eine Site oder ein Modul beziehen müssen. Meist handelt es sich dabei um Konfigurationen die ein Konzept umsetzen, z.B. bestimmte Sicherheitsaspekte, spezielle Logging- oder Statistik- Konzepte. Diese Konfigurationen können ebenfalls aktiviert (a2enconf) oder deaktiviert (a2disconf) werden.
In der Debian Infrastruktur sind für die Ablage dieser Konfigurationen, Module und Sites die folgenden Ordner vorgesehen.
conf-available
mods-available
sites-available
Zu den Ordner gibt es noch die passenden *-enabled
Ordner. Wird eine
Konfiguration, ein Modul oder eine Site enabled, dann wird in dem zugehörigen
*-enabled
Ordner ein entsprechender symbolischer Link auf die Konfiguration
angegelgt.
Mit den genannten Toos und der unten gezeigten Ordnerstruktur kann man einen
Apache-WEB-Server sehr gut managen. Dieser Debian way of (Apache) live
unterscheidet sich von einer standard Apache Installation (die nicht diese Tools
bereit stellt). In der Debian Installation gibt es deshalb noch einen Wrapper
für das apache2
Binary, das ist das Kommando:
apache2ctl: Apache HTTP server control interface
Hierbei handelt es sich um einen Wrapper, der sich eignet um den Server zu
administrieren, der aber auch als Ersatz für das apache2 Kommando
dient. Bei Letzterem zieht der Wrapper einige Informationen aus der Debian
Infrastruktur/Konfiguration, setzt die Umgebung entsprechend und ruft dann das
Kommando apache2
auf, wobei die Argumente 1:1 durchgereicht werden. Für eine
vollständige Beschreibung des Wrappers apache2ctl muss das Manual zum
apache2 Kommando konsultiert werdenxs.
Ordnerstruktur der Debian Apache Installation¶
In der unten stehenden Abbildung der Ordnerstruktur sind die symbolischen Links
vom *-enabled
Ordner zum *-available
Ordner angedeutet
({name}.conf
). Beispiel ist der symbolische Link der default-ssl.conf
Site sites-enabled/default-ssl.conf -> ../sites-available/default-ssl.conf
.
/etc/apache2/
│
├── apache2.conf # Main Config für serverweite Einstellungen
│
├── conf-available # zusätzliche verfügbare Konfigurationen
│ │
│ ├── security.conf # Konfiguration zur Absicherung des WEB-Servers
│ └── {name}.conf
│
├── conf-enabled # aktivierte zusätzliche Konfiguration
│ │ # Links auf die Dateien im Ordner ../conf-available/
│ ├── security.conf -----> ../conf-available/security.conf
│ └── {name}.conf -------> ../conf-available/{name}.conf
│
├── envvars # Umgebungsvariablen wie 'group' und 'user'
│ # des Serverprozess
├── magic # magic(5) Pattern
│
├── mods-available # verfügbare Module mit ihren Basiskonfigurationen
│ │
│ ├── *.load
│ └── {name}.conf
│
├── mods-enabled # Aktivierte Module
│ │ # Links auf die Dateien im Ordner ../mods-available/
│ ├── *.load ------------> ../mods-available/*.load
│ └── {name}.conf -------> ../mods-available/{name}.conf
│
├── ports.conf # Ports und IPs auf die der Server *lauscht*
│
├── sites-available # verfügbare *Sites*
│ ├── default-ssl.conf
│ └── {name}.conf
│
└── sites-enabled # aktivierte *Sites*
│ # Links auf Dateien im Ordner ../sites-available
├── default-ssl.conf --> ../sites-available/default-ssl.conf
└── {name}.conf -------> ../sites-available/{name}.conf