Dieses Tutorial zeigt Ihnen, wie Sie den LAMP-Stack unter Ubuntu 20.04 LTS installieren. Ein Software-Stack ist eine Reihe von Software-Tools, die gebündelt sind. LAMP steht für Linux, Apache, MariaDB/MySQL und PHP, die alle Open Source und kostenlos nutzbar sind. Es ist der am weitesten verbreitete Software-Stack, der dynamische Websites und Webanwendungen unterstützt. Linux ist das Betriebssystem; Apache ist der Webserver; MariaDB/MySQL ist der Datenbankserver und PHP ist die serverseitige Skriptsprache, die für die Generierung dynamischer Webseiten verantwortlich ist.
Voraussetzungen
Um diesem Tutorial zu folgen, benötigen Sie ein Ubuntu 20.04-Betriebssystem, das auf Ihrem lokalen Computer oder auf einem Remote-Server ausgeführt wird.
Wenn Sie nach einem VPS (Virtual Private Server) suchen, können Sie über diesen speziellen Link ein Konto bei DigitalOcean registrieren, um ein kostenloses Guthaben von 50 $ zu erhalten. (Nur für neue Benutzer). Wenn Sie bereits DigitalOcean-Benutzer sind, können Sie über diesen speziellen Link ein Konto bei Vultr registrieren, um ein kostenloses Guthaben von 50 $ zu erhalten (nur für neue Benutzer).
Und wenn Sie einen LAMP-Stack mit einem Domainnamen einrichten müssen, empfehle ich den Kauf von Domainnamen von NameCheap, da der Preis niedrig ist und Whois-Datenschutz lebenslang kostenlos ist.
Schritt 1:Softwarepakete aktualisieren
Bevor wir den LAMP-Stack installieren, ist es eine gute Idee, das Repository und die Softwarepakete zu aktualisieren. Führen Sie die folgenden Befehle auf Ihrem Ubuntu 20.04-Betriebssystem aus.
sudo apt update sudo apt upgrade
Schritt 2:Apache-Webserver installieren
Geben Sie den folgenden Befehl ein, um den Apache-Webserver zu installieren. Die apache2-utils
-Paket installiert einige nützliche Dienstprogramme wie das Apache-HTTP-Server-Benchmarking-Tool (ab).
sudo apt install -y apache2 apache2-utils
Nach der Installation sollte Apache automatisch gestartet werden. Überprüfen Sie seinen Status mit systemctl
.
systemctl status apache2
Beispielausgabe:
● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-04-11 11:31:31 CST; 2s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 53003 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 53011 (apache2) Tasks: 55 (limit: 19072) Memory: 6.4M CGroup: /system.slice/apache2.service ├─53011 /usr/sbin/apache2 -k start ├─53012 /usr/sbin/apache2 -k start └─53013 /usr/sbin/apache2 -k start
Hinweis:Wenn der obige Befehl nicht sofort beendet wird, können Sie die Q-Taste drücken, um die Kontrolle über das Terminal zurückzugewinnen.
Wenn es nicht läuft, verwenden Sie systemctl, um es zu starten.
sudo systemctl start apache2
Es ist auch eine gute Idee, Apache so zu aktivieren, dass er beim Systemstart automatisch gestartet wird.
sudo systemctl enable apache2
Überprüfen Sie die Apache-Version:
apache2 -v
Ausgabe:
Server version: Apache/2.4.41 (Ubuntu) Server built: 2020-03-05T18:51:00
Geben Sie nun die öffentliche IP-Adresse Ihres Ubuntu 20.04-Servers in die Adressleiste des Browsers ein. Sie sollten die Meldung „Es funktioniert!“ sehen. Webseite, was bedeutet, dass der Apache-Webserver ordnungsgemäß ausgeführt wird. Wenn Sie LAMP auf Ihrem lokalen Ubuntu 20.04-Computer installieren, geben Sie 127.0.0.1
ein oder localhost
in der Adressleiste des Browsers.
Wenn die Verbindung abgelehnt wird oder nicht hergestellt werden kann, verhindert möglicherweise eine Firewall eingehende Anfragen an TCP-Port 80. Wenn Sie die iptables-Firewall verwenden, müssen Sie den folgenden Befehl ausführen, um TCP-Port 80 zu öffnen.
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
Wenn Sie eine UFW-Firewall verwenden, führen Sie diesen Befehl aus, um TCP-Port 80 zu öffnen.
sudo ufw allow http
Jetzt müssen wir www-data
festlegen (Apache-Benutzer) als Eigentümer des Dokumentstammverzeichnisses (auch bekannt als Webstammverzeichnis). Standardmäßig gehört es dem Root-Benutzer.
sudo chown www-data:www-data /var/www/html/ -R
Standardmäßig verwendet Apache den System-Hostnamen als globalen ServerName
. Wenn der Systemhostname im DNS nicht aufgelöst werden kann, wird nach dem Ausführen von sudo apache2ctl -t
wahrscheinlich der folgende Fehler angezeigt Befehl.
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message
Um dieses Problem zu lösen, können wir einen globalen ServerName
setzen im Apachen. Verwenden Sie den Nano-Befehlszeilen-Texteditor, um eine neue Konfigurationsdatei zu erstellen.
sudo nano /etc/apache2/conf-available/servername.conf
Fügen Sie dieser Datei die folgende Zeile hinzu.
ServerName localhost
Speichern und schließen Sie die Datei. Um eine Datei im Nano-Texteditor zu speichern, drücken Sie Ctrl+O
, und drücken Sie dann zur Bestätigung die Eingabetaste. Drücken Sie zum Beenden Ctrl+X
. Aktivieren Sie dann diese Konfigurationsdatei.
sudo a2enconf servername.conf
Laden Sie Apache neu, damit die Änderung wirksam wird.
sudo systemctl reload apache2
Wenn Sie nun sudo apache2ctl -t
ausführen Befehl erneut ausführen, wird die obige Fehlermeldung nicht angezeigt.
Schritt 3:MariaDB-Datenbankserver installieren
MariaDB ist ein Drop-in-Ersatz für MySQL. Es wurde von ehemaligen Mitgliedern des MySQL-Teams entwickelt, die befürchten, dass Oracle MySQL in ein Closed-Source-Produkt verwandeln könnte. Geben Sie den folgenden Befehl ein, um MariaDB auf Ubuntu 20.04 zu installieren.
sudo apt install mariadb-server mariadb-client
Nach der Installation sollte der MariaDB-Server automatisch gestartet werden. Verwenden Sie systemctl um seinen Status zu überprüfen.
systemctl status mariadb
Ausgabe:
● mariadb.service - MariaDB 10.3.22 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 9161 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 9451) Memory: 64.7M CGroup: /system.slice/mariadb.service └─9161 /usr/sbin/mysqld
Wenn es nicht läuft, starten Sie es mit diesem Befehl:
sudo systemctl start mariadb
Damit MariaDB beim Booten automatisch startet, führen Sie
aussudo systemctl enable mariadb
Führen Sie nun das Sicherheitsskript nach der Installation aus.
sudo mysql_secure_installation
Wenn Sie aufgefordert werden, das MariaDB-Root-Passwort einzugeben, drücken Sie die Eingabetaste, da das Root-Passwort noch nicht festgelegt ist. Geben Sie dann y ein um das Root-Passwort für den MariaDB-Server festzulegen.
Als nächstes können Sie die Eingabetaste drücken, um alle verbleibenden Fragen zu beantworten, wodurch der anonyme Benutzer entfernt, die Remote-Root-Anmeldung deaktiviert und die Testdatenbank entfernt wird. Dieser Schritt ist eine Grundvoraussetzung für die MariaDB-Datenbanksicherheit. (Beachten Sie, dass Y großgeschrieben wird, was bedeutet, dass es die Standardantwort ist. )
Standardmäßig verwendet das MariaDB-Paket auf Ubuntu unix_socket
um die Benutzeranmeldung zu authentifizieren, was im Grunde bedeutet, dass Sie den Benutzernamen und das Passwort des Betriebssystems verwenden können, um sich bei der MariaDB-Konsole anzumelden. Sie können also den folgenden Befehl ausführen, um sich anzumelden, ohne das MariaDB-Root-Passwort anzugeben.
sudo mariadb -u root
Führen Sie zum Beenden
ausexit;
Überprüfen Sie die Versionsinformationen des MariaDB-Servers.
mariadb --version
Wie Sie sehen können, haben wir MariaDB 10.3.22 installiert.
mariadb Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Schritt 4:PHP7.4 installieren
Zum Zeitpunkt der Erstellung dieses Artikels ist PHP7.4 die neueste stabile Version von PHP und hat einen kleinen Leistungsvorteil gegenüber PHP7.3. Geben Sie den folgenden Befehl ein, um PHP7.4 und einige gängige PHP-Module zu installieren.
sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline
Aktivieren Sie das Apache php7.4-Modul und starten Sie dann den Apache-Webserver neu.
sudo a2enmod php7.4 sudo systemctl restart apache2
Überprüfen Sie die PHP-Versionsinformationen.
php --version
Ausgabe:
PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
Um PHP-Skripte mit dem Apache-Server zu testen, müssen wir eine info.php
erstellen Datei im Dokumentstammverzeichnis.
sudo nano /var/www/html/info.php
Fügen Sie den folgenden PHP-Code in die Datei ein.
<?php phpinfo(); ?>
Um eine Datei im Nano-Texteditor zu speichern, drücken Sie Ctrl+O
, und drücken Sie dann zur Bestätigung die Eingabetaste. Drücken Sie zum Beenden Ctrl+X
. Geben Sie nun in der Adressleiste des Browsers server-ip-address/info.php
ein . Ersetzen Sie server-ip-address
mit deiner aktuellen IP. Wenn Sie dieser Anleitung auf Ihrem lokalen Computer folgen, geben Sie 127.0.0.1/info.php
ein oder localhost/info.php
.
Sie sollten die PHP-Informationen Ihres Servers sehen. Dies bedeutet, dass PHP-Skripte ordnungsgemäß mit dem Apache-Webserver ausgeführt werden können.
Wie man PHP-FPM mit Apache ausführt
Grundsätzlich gibt es zwei Möglichkeiten, PHP-Code mit dem Apache-Webserver auszuführen:
- Apache-PHP-Modul
- PHP-FPM.
In den obigen Schritten wird das Apache PHP7.4-Modul verwendet, um PHP-Code zu verarbeiten, was normalerweise in Ordnung ist. Aber in einigen Fällen müssen Sie PHP-Code stattdessen mit PHP-FPM ausführen. So geht's.
Deaktivieren Sie das Apache PHP7.4-Modul.
sudo a2dismod php7.4
Installieren Sie PHP-FPM.
sudo apt install php7.4-fpm
Aktivieren Sie proxy_fcgi
und setenvif
Modul.
sudo a2enmod proxy_fcgi setenvif
Aktivieren Sie /etc/apache2/conf-available/php7.4-fpm.conf
Konfigurationsdatei.
sudo a2enconf php7.4-fpm
Starten Sie Apache neu, damit die Änderungen wirksam werden.
sudo systemctl restart apache2
Wenn Sie jetzt die info.php
aktualisieren Seite in Ihrem Browser finden Sie, dass die Server-API von Apache 2.0 Handler
geändert wurde zu FPM/FastCGI
, was bedeutet, dass der Apache-Webserver PHP-Anforderungen an PHP-FPM weiterleitet.
Herzlichen Glückwunsch! Sie haben den LAMP-Stack (Apache, MariaDB und PHP7.4) erfolgreich auf Ubuntu 20.04 installiert. Zur Sicherheit Ihres Servers sollten Sie info.php
löschen Datei jetzt ablegen, um neugierige Blicke zu vermeiden.
sudo rm /var/www/html/info.php
Nächster Schritt
Ich hoffe, dieses Tutorial hat Ihnen geholfen, den LAMP-Stack unter Ubuntu 20.04 LTS zu installieren. Vielleicht möchten Sie phpMyAdmin installieren , ein kostenloses und webbasiertes Open-Source-Datenbankverwaltungstool.
- So installieren Sie phpMyAdmin mit Apache (LAMP) unter Ubuntu 20.04
Sie können WordPress auch auf dem LAMP-Stack installieren, um Ihre eigene Website oder Ihren eigenen Blog zu erstellen.
- Installieren Sie WordPress auf Ubuntu 20.04 mit Apache, MariaDB, PHP7.4 (LAMP)
Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter, um weitere Tipps und Tricks zu erhalten. Pass auf dich auf 🙂