Apache ist zwar nicht der einzige Webserver unter Linux – ganz ehrlich, ich will nicht einmal anfangen zu erzählen wie viele es gibt – aber er ist der bekannteste. Reale Zahlen gibt es so gesehen keine, aber Apache ist auch der meist genutzte Webserver – öffnen Sie heute eine Webseite im Internet wird diese nach meinen Schätzungen zu 70 bis 80 Prozent unter Linux mit Apache laufen.
Es gibt so einige Aufgaben, für die man einen Webserver gebrauchen könnte – etwa weil man ganz einfach seine eigene Webseite veröffentlicht, für die Entwicklung von Webseiten oder für die eigene Cloud oder das eigene ERP (Enterprise Ressource Planning).
In diesem Beitrag der Linux Bibel Österreich sehen wir uns diesen Webserver nun etwas genauer an.
Inhaltsverzeichnis
Apache 2 installieren
Unter auf Debian basierenden Linux-Distributionen installieren Sie diesen Webserver ganz einfach über die Paket-Verwaltung durch das Paket „apache2„.
Apache 2 nutzen
Unter auf Debian basierenden Linux-Distributionen läuft der Server nach der Installation automatisch – dies zeigt als Administrator auf dem Terminal der Befehl:
systemctl status apache2
Noch einfacher, öffnen Sie den Webbrowser und geben die Adresse http://localhost/ ein:
Gerade wenn man den Server nur zur Web-Entwicklung benötigt, wird man Apache nicht die ganze Zeit laufen haben wollen – man deaktiviert in diesem Fall ganz einfach den automatischen Start mittels Systemd – also als Administrator auf dem Terminal:
systemctl disable apache2
Beim nächsten Systemstart startet Apache nicht mehr automatisch, nun können Sie den Server mit:
systemctl start apache2
manuell starten und mit:
systemctl stop apache2
stoppen, nehmen Sie Änderungen an der Konfiguration vor, starten Sie den Server neu:
systemctl restart apache2
Durch die Installation wird automatisch das neue Systemverzeichnis „/var/www/html/“ angelegt – hier liegen – sagen wir einmal unter normalen Umständen die Webseiten:
Für eine einfache Webseite mit einer einzigen Domain ist auch nicht viel mehr nötig als die HTML- oder PHP-Dateien dort abzulegen. Dieses Verzeichnis gehört zum System, also brauchen Sie administrative Rechte, um hier Dateien abzulegen, zu verändern oder zu löschen. Die erste Möglichkeit besteht darin die bestehende „index.html“ zu verändern – etwa am Terminal (wie schon beschrieben – mit administrativen Rechten):
nano /var/www/html/index.html
Erweiterte Webseiten
Sie können nicht nur eine Webseite auf dem Server ablegen, dies können durchaus mehrere sein – so etwa „linux-bibel-oesterreich.at“ und „windows.org„. Solche unterschiedlichen Webseiten legen Sie unter „/etc/apache2/sites-available/“ fest und aktivieren diese unter „/etc/apache2/sites-enabled/„:
Solche Webseiten nennt man „Virtual Hosts„, für jeden virtuellen Host legt man unter „/etc/apache2/sites-available/“ eine neue Datei an, die eigentlichen HTML-Dateien liegen anschließend unter „/var/www/html/“ in einem eigenen Verzeichnis – eben etwa „/var/www/html/linux-bibel/„.
Nun, wollen wir ganz einfach einmal einen solchen virtuellen Host mit dem oben genannten Beispiel anlegen:
nano /etc/apache2/sites-available/linux-bibel.conf
Eine solche Datei sieht wie folgt aus:
<VirtualHost *:80>
ServerName linux-bibel-oesterreich.at
ServerAdmin robert.goedl@linux-bibel-oesterreich.at
ServerAlias linux-bibel-oesterreich.org linux-bibel-oesterreich.com
DocumentRoot /var/www/html/linux-bibel/
<Directory /var/www/html/linux-bibel/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Require all granted
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
Für sichere Webseiten (https) wird es später einen eigenen Artikel geben. Nun sehen wir uns die Konfiguration etwas genauer an:
- ServerName – Gibt die eigentliche Adresse, also die Domain an
- ServerAdmin – Die E-Mail-Adresse des Administrators
- DocumentRoot – Das Verzeichnis mit den Dateien der Webseite
- ServerAlias – Die Adressen, unter denen die Seite noch erreichbar sein soll (dieser Eintrag ist nicht nötig, wenn man sowieso nur eine Adresse hat)
- <Directory /var/www/html/linux-bibel/> – Hier geben Sie noch einmal das Verzeichnis mit den Dateien der Webseite an
Mehr ist eigentlich zum Funktionieren in dieser Datei nicht nötig. Mit Strg+o wird die Datei gespeichert, mit Eingabe bestätigt, mit Strg+x wird der Editor geschlossen. Die Konfiguration der Seite wäre erledigt – diese muss nun noch aktiviert werden, dies gelingt mit dem Befehl:
a2ensite linux-bibel.conf
Nun muss der Server wie oben schon beschrieben neu gestartet werden:
systemctl restart apache2
Möchten Sie die Seite wieder deaktivieren:
a2dissite linux-bibel.conf
Apache-Module installieren und aktivieren
Apache kann durch zahlreiche Module erweitert werden, solche lassen sich ganz einfach über die Paket-Verwaltung installieren, indem Sie nach dem Begriff „libapache2“ suchen, alternativ installieren Sie manuell aus dem Internet heruntergeladene, indem Sie diese als Administrator in das Systemverzeichnis „/etc/apache2/mods-available/“ verschieben.
Installierte Module müssen nach der Installation zur Nutzung noch aktiviert werden – welche verfügbar sind, zeigt etwa auf dem Terminal der Befehl:
ls /etc/apache2/mods-available/
Um nun etwa das Modul „brotli.load“ zu aktivieren nutzen Sie den Befehl:
a2enmod brotli.load
Zum Deaktivieren:
a2dismod brotli.load
2 Reaktionen
[…] jeder will sich gleich einen kompletten Webserver wie etwa Apache unter Linux installieren. Braucht man einen Server nur zum Testen reicht auch XAMPP – […]
[…] benötigen neben einem Webserver (etwa Apache) eine Datenbank (etwa MariaDB). Wie Sie beides installieren und einrichten, lesen Sie unter den […]