Apache HTTP-Server ist einer der beliebtesten Webserver der Welt. Es ist ein Open-Source- und plattformübergreifender HTTP-Server, der einen großen Prozentsatz der Internet-Websites betreibt. Apache bietet viele leistungsstarke Funktionen, die durch zusätzliche Module erweitert werden können.
In diesem Tutorial erklären wir, wie man Apache unter Debian 10, Buster installiert.
Voraussetzungen #
Bevor Sie mit dem Tutorial beginnen, vergewissern Sie sich, dass Sie als Benutzer mit sudo-Berechtigungen angemeldet sind.
Installieren von Apache #
Apache-Pakete sind in den standardmäßigen Debian-Repositories verfügbar.
Die Installation ist ziemlich einfach. Aktualisieren Sie den Paketindex und installieren Sie den Apache-Webserver mit den folgenden Befehlen:
sudo apt updatesudo apt install apache2
Das war’s, Apache ist installiert und automatisch gestartet. Geben Sie Folgendes ein, um den Status zu überprüfen:
sudo systemctl status apache2 ● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset:
Active: active (running) since Sat 2019-07-27 13:55:49 PDT; 21s ago
...
Passen Sie die Firewall # an
UFW-Benutzer können HTTP (80 ) und HTTPS (443 )-Ports, indem Sie das Profil „Nginx Full“ aktivieren:
sudo ufw allow 'Apache Full' Wenn Sie nftables verwenden, um Verbindungen zu Ihrem System zu filtern, öffnen Sie die erforderlichen Ports, indem Sie den folgenden Befehl ausführen:
nft add rule inet filter input tcp dport {80, 443} ct state new,established counter accept Verifizieren der Apache-Installation #
Um zu überprüfen, ob Apache richtig funktioniert, öffnen Sie Ihren Browser, geben Sie Ihre Server-IP-Adresse oder Ihren Domänennamen ein http://YOUR_IP_OR_DOMAIN/ , und Sie sehen die Standard-Willkommensseite von Apache, wie unten gezeigt:
Die Seite enthält grundlegende Informationen über Apache-Konfigurationsdateien, Hilfsskripte und Verzeichnispfade.
Struktur und Best Practices der Apache-Konfigurationsdatei #
- In Debian-basierten Systemen befinden sich Apache-Konfigurationsdateien in
/etc/apache2Verzeichnis. - Die Apache-Hauptkonfigurationsdatei ist
/etc/apache2/apache2.conf. - Die Ports, auf die Apache hört, sind in
/etc/apache2/ports.confangegeben Datei. - Apache Virtual Hosts-Dateien befinden sich in
/etc/apache2/sites-availableVerzeichnis. Die in diesem Verzeichnis gefundenen Konfigurationsdateien werden von Apache nicht verwendet, es sei denn, sie sind mit/etc/apache2/sites-enabledverknüpft Verzeichnis. - Sie können eine Direktive für virtuelle Hosts aktivieren, indem Sie mit
a2ensiteeinen symbolischen Link erstellen Befehl aus den Konfigurationsdateien, die insites-availablezu finden sind Verzeichnis zusites-enabledVerzeichnis. Verwenden Sie zum Deaktivieren eines virtuellen Hosts dena2dissiteBefehl. - Es wird dringend empfohlen, die standardmäßige Namenskonvention zu befolgen, wenn Ihr Domänenname beispielsweise
mydomain.comist dann sollte die Domain-Konfigurationsdatei/etc/apache2/sites-available/mydomain.com.confheißen - Konfigurationsdateien, die zum Laden verschiedener Apache-Module verwendet werden, befinden sich in
/etc/apache2/mods-availableVerzeichnis. Konfigurationen immods-availableVerzeichnis kann aktiviert werden, indem ein symbolischer Link zu/etc/apache2/mods-enableerstellt wird Verzeichnis mita2enconfBefehl und mita2disconfdeaktiviert Befehl. - Dateien mit globalen Konfigurationsfragmenten werden in
/etc/apache2/conf-availablegespeichert Verzeichnis. Dateien in derconf-available-Verzeichnis kann aktiviert werden, indem ein symbolischer Link zu/etc/apache2/conf-enablederstellt wird mita2enconfBefehl und mita2disconfdeaktiviert Befehl. - Apache-Protokolldateien (
access.logunderror.log) befinden sich im/var/log/apacheVerzeichnis. Es wird empfohlen, einen anderenaccesszu verwenden underrorProtokolldateien für jeden virtuellen Host. - Sie können das Root-Verzeichnis Ihrer Domänendokumente auf einen beliebigen Speicherort festlegen. Die häufigsten Speicherorte für Webroot sind:
/home/<user_name>/<site_name>/var/www/<site_name>/var/www/html/<site_name>/opt/<site_name>