Einführung
In diesem Tutorial lernen Sie, wie Sie einen LEMP-Stack (Linux, NGINX, MySQL-Datenbank, PHP) auf Ubuntu 24.04 LTS installieren. Am Ende dieses Tutorials verfügen Sie über einen voll funktionsfähigen LEMP-Stack-Server.
Voraussetzungen
- Server mit Ubuntu 24.04 LTS
- Zugriff auf den Root-Benutzer oder einen Benutzer mit sudo-Berechtigungen
- Installieren Sie nano oder Ihren bevorzugten Texteditor.
Schritt 1 – Server aktualisieren
Verwenden Sie den folgenden Befehl, um die Paketquellen zu aktualisieren und sicherzustellen, dass wir die neueste Version der Software installieren:
sudo apt update
Verwenden Sie anschließend den folgenden Befehl, um die aktuell installierten Pakete zu aktualisieren:
sudo apt dist-upgrade -yDie Option -y bestätigt die Operation automatisch, sodass Sie nicht Y eingeben müssen, um fortzufahren.
Schritt 2 – NGINX installieren
NGINX ist der Webserver, den wir verwenden werden. Wir können ihn mit folgendem Befehl installieren:
sudo apt install nginx -y
Schritt 3 – MySQL installieren
Jetzt können wir den MySQL-Server installieren. MySQL ist die Datenbank, die wir verwenden werden. Wir können sie mit folgendem Befehl installieren:
sudo apt install mysql-server -y
Schritt 4 – MySQL sichern
Sichern Sie den neu installierten MySQL-Server mit folgendem Befehl:
sudo mysql_secure_installation
MySQL wird Sie zur Bestätigung des Passworts auffordern:
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No:Sie können Y drücken und dann ENTER.
Legen Sie die Richtlinie zur Passwortvalidierung fest. Es gibt drei Stufen:
0: NIEDRIGE Länge >= 81: MITTEL Länge >= 8, Ziffern, Groß- und Kleinschreibung sowie Sonderzeichen2: STRENG Länge >= 8, numerisch, Groß-/Kleinschreibung gemischt, Sonderzeichen und Wörterbuchdatei
Wählen Sie die entsprechende Zahl und drücken Sie dann die Eingabetaste. Ich empfehle, ein sicheres Passwort zu wählen (Zahl 2).
MySQL fragt Sie, ob Sie anonyme Benutzer entfernen möchten:
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) :Drücken Sie zum Fortfahren Y und anschließend ENTER.
Als Nächstes fragt MySQL Sie, ob Sie die Anmeldung als entfernter Root-Benutzer unterbinden möchten:
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) :Drücken Sie zum Fortfahren Y und anschließend ENTER.
Als Nächstes fragt MySQL Sie, ob Sie die Testdatenbank löschen und darauf zugreifen möchten:
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) :Drücken Sie zum Fortfahren Y und anschließend ENTER.
Nun fragt MySQL Sie zum letzten Mal, ob Sie die Score-Tabellen neu laden möchten:
Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) :Drücken Sie zum Fortfahren Y und anschließend ENTER.
Fertig. Sie verfügen nun über einen sicheren MySQL-Server.
Schritt 5 – PHP installieren
Ubuntu 24.04 sollte die neueste stabile PHP-Version enthalten. Sie können dies gerne überprüfen:
apt list | grep '^php[0-9]*-\(fpm\|mysql\)'
PHP installieren:
sudo apt install php8.3-fpm php8.3-mysql -y
php8.3-fpm ist der FastCGI-Prozessmanager, der es uns ermöglicht, PHP auf NGINX zu verwenden.
php8.3-mysql ist eine Erweiterung, die es PHP ermöglicht, mit dem MySQL-Server zu interagieren.
An diesem Punkt ist die Installation der Pakete abgeschlossen.
Schritt 6 – NGINX für PHP konfigurieren
Standardmäßig verarbeitet NGINX keine PHP-Dateien, daher müssen wir die Standardkonfigurationsdatei bearbeiten.
Verwenden Sie Ihren bevorzugten Texteditor, um die Standardkonfigurationsdatei zu bearbeiten; ich werde nano verwenden.
sudo nano /etc/nginx/sites-available/default
In dieser Datei müssen wir etwas nach unten scrollen. Innerhalb des Serverblocks, nach der Location/Directive, müssen wir Folgendes hinzufügen:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
}Falls Sie eine andere PHP-Version installiert haben, können Sie diese hier ändern.
Dies weist NGINX an, alle Dateien mit der Endung .php an den zuvor installierten FastCGI-Prozessmanager zu senden.
Sie können hier auch index.php zur Liste hinzufügen:
index index.html index.htm index.nginx-debian.html index.php;
Speichern Sie die Datei und beenden Sie das Programm. (STRG+X,Y, EINGABE) für nano.
Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die NGINX-Konfiguration korrekt ist:
sudo nginx -t
Sie sollten etwa Folgendes sehen:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulStarten Sie NGINX anschließend mit folgendem Befehl neu:
sudo service nginx restart
Schritt 7 – Überprüfen Sie, ob PHP funktioniert oder nicht.
Nun überprüfen wir, ob PHP mit NGINX funktioniert. Wir können ein einfaches “Hello, World”-PHP-Skript erstellen.
Das Standard-Stammverzeichnis für NGINX ist /var/www/html.
Erstellen wir eine hello.php-Datei in diesem Verzeichnis:
sudo nano /var/www/html/hello.php
Fügen Sie in die Datei folgenden Inhalt ein:
<?php
echo 'Hello, World!';Speichern Sie die Datei und beenden Sie das Programm. (STRG+X,Y, EINGABE) für nano.
Jetzt können wir in unserem Browser http:// aufrufen. Zugriff auf /hello.php.
Um die öffentliche IP-Adresse Ihres Servers zu erhalten, verwenden Sie folgenden Befehl:
hostname -I
Falls das nicht funktioniert, versuchen Sie, mit cURL die öffentliche IP-Adresse des Servers zu ermitteln:
curl -4 https://ip.hetzner.com
Das solltest du dir ansehen:
Abschluss
Sie haben erfolgreich einen LEMP-Stack auf Ubuntu 24.04 LTS installiert. Sie können nun mit der Bereitstellung Ihrer LEMP-Stack-Anwendungen beginnen. Viel Erfolg!









