Module
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Der Webserver Apache bzw. dessen Funktionalität lassen sich über eine Vielzahl von Modulen erweitern. Zum Teil werden die Module direkt von den Apache-Entwicklern bereitgestellt. Es gibt aber auch viele nützliche Module, welche von Dritten entwickelt und gepflegt werden. Je nach Modul variieren Installation und Konfiguration etwas, so dass man Details am besten in der jeweiligen Dokumentation nachliest.
Im Folgenden werden einige Module vorgestellt.
PHP¶
PHP ist eine Skriptsprache mit einer an Perl angelehnten Syntax, die hauptsächlich zur Erstellung dynamischer Webseiten oder ganzer Webanwendungen verwendet wird. Die Installation von PHP und des Apache-Moduls ist im Artikel PHP (Abschnitt „Apache“) beschrieben.
Falls die Einbindung nicht wie erwartet funktioniert, siehe auch den Abschnitt Problembehebung weiter unten.
Weitere Module¶
Im Wiki werden noch weitere Module behandelt, und zwar in den folgenden Unterartikeln:
Apache/SSI - "Server Side Includes" nutzen
Apache/mod ssl - Verschlüsselte SSL-Verbindungen aufbauen
Apache/mod rewrite - Angeforderte URLs umschreiben
Apache/mod proxy html - Apache als Zwischenproxy benutzen
Apache/mod dav - Apache als WebDAV-Server
Apache/mod wsgi - WSGI-konforme Python-Webapplikationen über den Apache-Server ausliefern
Apache/Sicherheit Übersichtsseite zu Sicherheitsmodulen für den Webserver Apache
Apache/mod security - Zugriffskontrolle basierend auf einer Mustererkennung
Apache/mod evasive - Erkennung von DoS- und DDoS-Attacken
Apache/mod spamhaus - Zugriffskontrolle anhand einer DNS-based Blackhole List (DNSBL)
Apache/mod geoip2 - Zugriffskontrolle basierend auf dem Ursprungsland
mod-dnssd¶
Apache kann über Avahi seine Dienste im lokalen Netzwerk publizieren. Dazu muss das Paket
libapache2-mod-dnssd (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install libapache2-mod-dnssd
Oder mit apturl installieren, Link: apt://libapache2-mod-dnssd
installiert werden. Nachdem man nun das Modul über:
sudo a2enmod dnssd
aktiviert und den Webserver neu gestartet hat, zeigen Browser wie beispielsweise Epiphany Webseiten im lokalen Netzwerk als "lokale Seiten" automatisch in den Lesezeichen an.
Problembehebung¶
PHP-Datei wird nicht ausgeführt¶
Falls der Webbrowser fragt, ob eine php-Datei heruntergeladen werden soll, anstatt sie anzuzeigen, so ist das php-Modul evtl. nicht korrekt aktiviert. Um dies zu korrigieren, führt man in einem Terminal [1] den Befehl
sudo a2enmod php5 # für PHP5 bzw. sudo a2enmod php7.0 # für PHP7
aus und startet anschließend den Webserver neu. Am besten löscht man anschließend auch gleich den Browsercache.
Sollte sich die PHP-Datei auf dem lokalen System befinden, ist darauf zu achten, das sie mit http://
(z.B. http:///var/www/index.php
) aufgerufen wird. Beim Öffnen per Doppelklick geht der Browser den Weg über file://
(file:///var/www/index.php
) und versucht die Datei herunterzuladen.
Weiterhin ist darauf zu achten, dass die PHP-Dateien als "executable" (x
) markiert sind. Dazu kann man in das Verzeichnis der Webseite (bzw. der Anwendung) wechseln und folgenden Befehl rekursiv anwenden:
sudo chmod -R o+x *.php
Links¶
Intern¶
Apache 2.4 - Hauptartikel
Extern¶
Dokumentation Apache 2.4 🇩🇪 zu den in der Standardinstallation enthaltenen Modulen