GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Apache Webserver auf Centos 8

Der Apache HTTP-Server (Apache) ist eine der beliebtesten kostenlosen und plattformübergreifenden Open-Source-Webserver-Software, die unter den Bedingungen der Apache-Lizenz 2.0 veröffentlicht wurde.

Der Apache ist als Teil des LAMP-Setups beliebt, da er das A im Akronym ist. Die Funktionalität des Apache-Servers kann mit den vielen verfügbaren Modulen erweitert werden.

Voraussetzungen:

  • Aktueller Centos 8 Server
  • Root-Zugriff auf den Server (oder Benutzer mit sudo-Zugriff)
  • Firewall so eingerichtet, dass Datenverkehr an Port 80 und 443 zugelassen wird

Apache installieren

Stellen Sie sicher, dass die Pakete auf dem neuesten Stand sind:

sudo dnf -y update

Apache ist in den standardmäßigen CentOS 8-Software-Repositories als httpd verfügbar . Sie können Informationen darüber mit diesem Befehl überprüfen:

sudo dnf info httpd

Sie sollten etwas Ähnliches sehen:

$ sudo dnf info httpd
CentOS Linux 8 - AppStream                                          20 MB/s | 8.8 MB     00:00
CentOS Linux 8 - BaseOS                                               24 MB/s | 5.6 MB     00:00
Last metadata expiration check: 0:00:01 ago on Sat 28 Aug 2021 01:06:59 PM UTC.
Available Packages
Name         : httpd
Version      : 2.4.37
Release      : 39.module_el8.4.0+778+c970deab
Architecture : x86_64
Size         : 1.4 M
Source       : httpd-2.4.37-39.module_el8.4.0+778+c970deab.src.rpm
Repository   : appstream
Summary      : Apache HTTP Server
URL          : https://httpd.apache.org/
License      : ASL 2.0
Description  : The Apache HTTP Server is a powerful, efficient, and extensible
             : web server.

Installieren Sie es mit diesem Befehl:

sudo dnf install -y httpd

HTTP und https in Firewalld aktivieren

Wenn Sie Firewalld eingerichtet und ausgeführt haben, müssen Sie die http- und https-Ports mit diesen Befehlen aktivieren:

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

Laden Sie nun die Firewall neu, um diese neuen Regeln in Kraft zu setzen:

sudo firewall-cmd --reload

httpd-Dienst starten und aktivieren

Standardmäßig wird der Dienst nicht gestartet. Bestätigen Sie mit folgendem Befehl:

sudo systemctl status httpd

Ausgabe:

$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:httpd.service(8)

Starten Sie den Dienst mit diesem Befehl:

sudo systemctl start httpd

Sie erhalten einen aktiven Status, wenn der Dienst ausgeführt wird
Bestätigen Sie, dass er jetzt einwandfrei funktioniert:

$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2021-08-28 13:32:17 UTC; 17s ago
     Docs: man:httpd.service(8)
 Main PID: 65827 (httpd)
   Status: "Running, listening on: port 80"
    Tasks: 213 (limit: 23800)
   Memory: 28.9M
   CGroup: /system.slice/httpd.service
           ├─65827 /usr/sbin/httpd -DFOREGROUND
           ├─65828 /usr/sbin/httpd -DFOREGROUND
           ├─65829 /usr/sbin/httpd -DFOREGROUND
           ├─65830 /usr/sbin/httpd -DFOREGROUND
           └─65831 /usr/sbin/httpd -DFOREGROUND

Aug 28 13:32:17 test-app-server systemd[1]: Starting The Apache HTTP Server...
Aug 28 13:32:17 test-app-server httpd[65827]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::8fc:23ff:fe51:cc>
Aug 28 13:32:17 test-app-server systemd[1]: Started The Apache HTTP Server.
Aug 28 13:32:17 test-app-server httpd[65827]: Server configured, listening on: port 80

Das Obige bestätigt, dass Apache jetzt gut funktioniert.

Um zu bestätigen, dass auf den Dienst zugegriffen werden kann, rufen Sie bitte die folgende URL auf, um zu sehen, ob Sie die httpd-Seite abrufen können:

http://server_ip

Wenn Sie den Server nicht kennen, verwenden Sie den folgenden Befehl in Ihrem Terminal:

curl -4 icanhazip.com

Wenn Sie diese Seite besuchen und alles gut funktioniert, sollten Sie die Apache-Standardseite wie im folgenden Screenshot sehen:

Um sicherzustellen, dass der Dienst immer beim Booten gestartet wird, verwenden Sie diesen systemctl-Befehl:

sudo systemctl enable httpd

Virtuelle Hosts einrichten

Mit Apache ist es möglich, mehrere Sites auf demselben Server zu hosten, auf dem Apache ausgeführt wird. Dies kann immer erreicht werden, indem mehrere Domains verwendet werden, die jeweils eine Website darstellen, die der Server hostet.

Virtuelle Apache-Hosts ähneln Nginx-Serverblöcken. Jeder virtuelle Host verfügt über Konfigurationsdetails für einen einzelnen Host. Sie können so viele virtuelle Hosts haben, wie Sie möchten.

In diesem Beispiel verwenden wir die Domäne site1.citizix.com für den virtuellen Host, aber Sie können die Domain Ihrer Wahl verwenden. Bitte beachten Sie, dass der DNS für die zu verwendende Domain bereits so konfiguriert sein sollte, dass er auf die IP-Adresse des Servers zeigt.
Bestätigen Sie dies mit:

dig -t A site1.citizix.com

Verzeichnis und Beispielinhalte erstellen

Die Standardseite von Apache ist als standardmäßiger virtueller Host konfiguriert, der Inhalte von /var/www/html bereitstellt . Es hat sich bewährt, das Verzeichnis Ihrer Website im Verzeichnis /var/www zu erstellen da es sich bewährt hat, von dort aus zu dienen.

Lassen Sie uns mit dem folgenden Befehl ein Verzeichnis für unsere Site erstellen:

sudo mkdir /var/www/site1.citizix.com

Lassen Sie uns eine einfache index.html erstellen Seite, die von unserer Website bereitgestellt werden soll. Sie müssen vim installiert haben, damit dies funktioniert, wenn nicht, verwenden Sie diesen Befehl:

sudo dnf install -y vim

Bearbeiten Sie die Datei:

sudo vim /var/www/site1.citizix.com/index.html 

Inhalt zur Datei hinzufügen:

<html>
  <head>
    <title>Hello from Citizix Site1!</title>
  </head>
  <body>
    <h1>Hey!</h1>
    <p>This is citizix site1. Welcome here.</p>
  </body>
</html>

Stellen wir abschließend sicher, dass der aktuelle Benutzer Eigentümer des Site-Verzeichnisses ist:

sudo chown -R $USER:$USER /var/www/site1.citizix.com

Erstellen eines virtuellen Hosts

Apache Virtual Host-Dateien geben die Konfiguration jeder Site an und teilen dem Apache-Webserver mit, wie er auf verschiedene Domain-Anfragen reagieren soll.

Die Apache-Konfigurationen werden im Verzeichnis /etc/httpd/conf.d/ gespeichert . Lassen Sie uns eine Konfiguration für unsere Site erstellen:

sudo vim /etc/httpd/conf.d/site1.citizix.com.conf

Fügen Sie den folgenden Inhalt hinzu:

<VirtualHost *:80>
    ServerName site1.citizix.com
    ServerAlias site1.citizix.com
    DocumentRoot /var/www/site1.citizix.com
    ErrorLog /var/log/httpd/site1.citizix.com.error.log
    CustomLog /var/log/httpd/site1.citizix.com.requests.log combined
</VirtualHost>

Dadurch wird Apache Folgendes mitgeteilt:

  • ServerName und ServerAlias ​​– Name des zu bedienenden Hosts
  • DocumentRoot – wo man direkt den Root findet, der die öffentlich zugänglichen Webdokumente enthält
  • ErrorLog – wo Fehlerprotokolle für diese Seite gespeichert werden
  • CustomLog – wo Anforderungsprotokolle für diese bestimmte Website gespeichert werden

Speichern und schließen Sie die Datei, wenn Sie fertig sind

Testen des virtuellen Hosts

Jetzt, da die Konfiguration vorhanden ist, müssen wir testen, ob alles wie erwartet funktioniert.

Starten Sie zuerst Apache neu, um die Konfiguration neu zu laden:

sudo systemctl restart httpd 

Listen Sie den Inhalt von /var/log/httpd/ auf Verzeichnis, um zu sehen, ob Apache die Protokolldateien erstellt hat:
Wenn alles in Ordnung ist, sollten Sie eine Ausgabe ähnlich der folgenden sehen:

# ls /var/log/httpd/
access_log  error_log  site1.citizix.com.error.log  site1.citizix.com.requests.log

Wenn alles in Ordnung ist, wird Apache jetzt Ihren Domainnamen bereitstellen. Sie können dies testen, indem Sie zu http://site1.citizix.com navigieren , wo Sie so etwas sehen sollten:

Der obige Screenshot bestätigt, dass der virtuelle Host erfolgreich konfiguriert wurde und Inhalte bereitstellt.

Wenn Sie mehrere andere Websites hosten müssen, wiederholen Sie die obigen Schritte für die gewünschten Websites.

Schlussfolgerung

Wir haben es geschafft, den Apache-Webserver in den obigen Anweisungen in Centos 8 Server zu installieren und einzurichten.


Cent OS
  1. So installieren Sie den Apache-Webserver unter CentOS 7

  2. Installieren Sie den Apache-Webserver CentOS 6 / RHEL 6

  3. Installieren Sie Apache Web Server auf CentOS 8 - Schritt für Schritt, um es zu tun?

  4. So installieren Sie Apache/httpd unter CentOS 8 Linux

  5. Installieren Sie Apache unter CentOS 8

So installieren Sie den Cherokee-Webserver unter CentOS 6

So installieren Sie Jetty Web Server unter CentOS 7

So installieren Sie den Hiawatha-Webserver unter CentOS 7

So installieren Sie den Caddy-Webserver unter CentOS 7

So installieren Sie den Apache-Webserver unter Ubuntu 18.04

So installieren Sie den Caddy-Webserver unter CentOS 8