Hinweis:

Apache Web Server installieren

Einführung

Apache ist seit 1993 aktiv und im Laufe der Zeit zu einem der beliebtesten Webserver der Welt geworden. Der Apache-Webserver ist eine Schlüsselkomponente des LAMP-(Linux-, Apache-, Oracle MySQL- und Perl/PHP-)Softwarestacks und wird auch heute weit verbreitet verwendet.

Der Apache-Webserver ist direkt im Application Streams-Repository in Oracle Linux 8 oder höher verfügbar und einfach bereitzustellen und zu konfigurieren.

Voraussetzungen

Ziele

Am Ende dieses Tutorials haben Sie folgende Ziele erreicht:

Installieren und Konfigurieren des Webserver-Packages

  1. Installieren Sie das Package httpd und seine Abhängigkeiten.

    sudo dnf install httpd
    
  2. Aktivieren und starten Sie den httpd-Service.

    Mit diesem Befehl können Sie den httpd-Service sofort verwenden und starten und den Service auch nach einem Systemneustart automatisch starten:

    sudo systemctl enable --now httpd.service
    

    Um den Status des Service zu prüfen, geben Sie Folgendes ein:

    sudo systemctl status httpd
    
  3. (Optional) Wenn Sie ein benutzerdefiniertes Firewallprofil oder eine Oracle Cloud Infrastructure-Instanz verwenden, öffnen Sie den Firewallport für den Apache-Webservice (80).

    Diese Befehle aktivieren den Firewallport für den Apache-Webservice und laden den Standardfirewall-Service neu:

    sudo firewall-cmd --add-service=http --permanent
    sudo firewall-cmd --reload
    
  4. Deployments testen.

    Gehen Sie mit Ihrem Webbrowser zu dem Domainnamen oder der IP-Adresse Ihres Systems. Beispiel: http://myserver.example.com. Der Apache-Webserver öffnet die Standardtestseite.

Konfigurieren von Apache

Um den Root-Pfad für Ihren Webserver zu ändern, bearbeiten Sie die Datei /etc/httpd/conf/httpd.conf nicht direkt. Erstellen Sie stattdessen als bevorzugte Methode eine site-spezifische Konfigurationsdatei im Verzeichnis /etc/httpd/conf.d.

Im folgenden Beispiel wird die Datei /etc/httpd/conf.d/example.com.conf erstellt, die Konfigurationen für virtuelle Hosts enthält.

  1. Erstellen Sie virtuelle Hosts, indem Sie die folgenden Informationen in /etc/httpd/conf.d/example.com.conf hinzufügen:

    Hören *:80

    <VirtualHost *:80>

    ServerName example.com
    ServerAlias www.example.com

    DocumentRoot /var/www/example.com/html/

    ErrorLog /var/log/httpd/example.com_error.log
    CustomLog /var/log/httpd/example.com_access.log kombiniert

    </VirtualHost>

    ServerName und ServerAlias können Hostnamen, Domainnamen oder IP-Adressen sein, die für den Zugriff auf den Service verwendet werden können.

  2. Erstellen Sie den Stammordner des Dokuments.

    Der Root-Ordner hostet die Webseiten, die Apache für Browser bereitstellen würde.

    sudo mkdir -p /var/www/example.com/html
    sudo echo "example.com" > /var/www/example.com/html/index.html
    sudo chown -R apache:apache /var/www/example.com/html
    

    Auf Systemen, auf denen SELinux im Enforcing-Modus aktiviert ist und Seiten nicht aus /var/www directory bereitgestellt werden, müssen Sie den richtigen Sicherheitskontext auf das Verzeichnis DocumentRoot anwenden. Beispiel: Um Webseiten aus dem Verzeichnis /mnt/example.com zu bedienen, geben Sie Folgendes ein:

    sudo semanage fcontext -a -t httpd_sys_content_t "/mnt/example.com(/.*)?"
    sudo restorecon -Rv /mnt/example.com/
    
  3. Wenden Sie die Konfiguration an.

    sudo systemctl restart httpd
    

Webservice sichern

Als Best Practice wird empfohlen, die gesamte Kommunikation zwischen einem Webbrowser und Ihrem Apache-Server mit HTTPS zu sichern. Für ein sicheres Setup ist ein TLS-Zertifikat erforderlich.

  1. Konfigurieren Sie Ihre TLS/SSL-Zertifikate.

Hinweis:
Oracle empfiehlt dringend, ein TLS-Zertifikat zu verwenden, das von einer externen Certificate Authority (CA) signiert wurde. Weitere Informationen finden Sie unter Oracle Linux: Zertifikate und Public Key Infrastructure verwalten.

  1. Installieren Sie das HTTPS-Add-on für Apache.

    sudo dnf install mod_ssl
    sudo systemctl restart httpd
    
  2. Aktualisieren Sie die Apache-Konfiguration. Beispiel: Fügen Sie in /etc/httpd/conf.d/example.com.conf die folgende Konfiguration hinzu:

    Hören *:443

    <VirtualHost *:443>

    ServerName example.com
    ServerAlias www.example.com

    SSLEngine auf SSLCertificateFile /etc/pki/tls/private/certificate.crt
    SSLCertificateKeyFile /etc/pki/tls/private/private.key

    DocumentRoot /var/www/example.com/html/

    ErrorLog /var/log/httpd/example.com_error.log
    CustomLog /var/log/httpd/example.com_access.log kombiniert

    </VirtualHost>

  3. Umleiten von HTTP-Anforderungen an HTTPS.

    Ersetzen Sie die vorhandene HTTP VirtualHost-Konfiguration wie folgt durch eine Umleitung:

    <VirtualHost *:80>

    ServerName example.com
    ServerAlias www.example.com

    Umleitung "/" "https://example.com/"

    </VirtualHost>

  4. Starten Sie den Apache-Service neu, um die neue Konfiguration zu laden.

    sudo systemctl restart httpd
    
  5. (Optional) Konfigurieren Sie die Firewall.

    Diese Befehle aktivieren den Firewallport 443 für den Apache HTTPS-Service und laden den Standardfirewall-Service neu:

    sudo firewall-cmd --add-service=https --permanent
    sudo firewall-cmd --reload
    

Weitere Lernressourcen

Sehen Sie sich andere Übungen zu docs.oracle.com/learn an, oder greifen Sie auf weitere Inhalte für kostenloses Lernen im Oracle Learning YouTube-Kanal zu. Außerdem besuchen Sie education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.

Produktdokumentation finden Sie im Oracle Help Center.