Server Installation · 4 min read · Oct 24, 2025
Wie man Nginx mit PHP und MySQL (LEMP-Stack) auf CentOS 7 installiert
Nginx (ausgesprochen “engine x”) ist ein kostenloser, Open-Source, leistungsstarker HTTP-Server. Nginx ist bekannt für seine Stabilität, umfangreiche Funktionen, einfache Konfiguration und geringen Ressourcenverbrauch. Dieses Tutorial zeigt, wie Sie Nginx auf einem CentOS 7-Server mit PHP-Unterstützung (über PHP-FPM) und MySQL (Mariadb) Unterstützung installieren können.
1 Vorbemerkung
In diesem Tutorial verwende ich den Hostnamen server1.example.com mit der IP-Adresse 192.168.1.105. Diese Einstellungen können bei Ihnen abweichen, daher müssen Sie sie gegebenenfalls anpassen.
2 Aktivieren zusätzlicher Repositories
Nginx ist nicht in den offiziellen CentOS-Repositories verfügbar, daher fügen wir das Repository des Nginx-Projekts hinzu, um es zu installieren:
vi /etc/yum.repos.d/nginx.repo [nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=13 MySQL installieren
Zuerst installieren wir Mariadb. Mariadb ist ein kostenloser Fork von MySQL. Führen Sie diesen Befehl in der Shell aus:
yum install mariadb mariadb-server net-toolsDann erstellen wir die Systemstartlinks für MySQL (damit MySQL automatisch startet, wenn das System bootet) und starten den MySQL-Server:
systemctl enable mariadb.service
systemctl start mariadb.serviceÜberprüfen Sie nun, ob das Netzwerk aktiviert ist. Führen Sie aus:
netstat -tap | grep mysqlEs sollte etwas wie folgt angezeigt werden:
[root@example ~]# netstat -tap | grep mysql
tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN 10623/mysqld Führen Sie aus:
mysql_secure_installationum ein Passwort für den Benutzer root festzulegen (ansonsten kann jeder auf Ihre MySQL-Datenbank zugreifen!):
[root@example ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not foundHINWEIS: DAS AUSFÜHREN ALLER TEILE DIESER SCRIPTES WIRD FÜR ALLE MariaDB
SERVER IM PRODUKTIONSEINSATZ EMPFOHLEN! BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!Um sich bei MariaDB anzumelden, um es zu sichern, benötigen wir das aktuelle
Passwort für den Benutzer root. Wenn Sie gerade MariaDB installiert haben und
Sie das root-Passwort noch nicht festgelegt haben, wird das Passwort leer sein,
also sollten Sie hier einfach die Eingabetaste drücken.Geben Sie das aktuelle Passwort für root ein (drücken Sie Enter für keines):
OK, Passwort erfolgreich verwendet, weiter...Das Festlegen des root-Passworts stellt sicher, dass niemand ohne die richtige
Autorisierung auf den MariaDB-Root-Benutzer zugreifen kann.Root-Passwort festlegen? [Y/n] <-- ENTER
Neues Passwort: <-- yourrootsqlpassword
Neues Passwort erneut eingeben: <-- yourrootsqlpassword
Passwort erfolgreich aktualisiert!
Aktualisieren der Berechtigungstabellen..
... Erfolg!Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der es jedem
ermöglicht, sich bei MariaDB anzumelden, ohne dass ein Benutzerkonto für
ihn erstellt werden muss. Dies ist nur für Tests gedacht und soll die
Installation etwas reibungsloser gestalten. Sie sollten sie entfernen, bevor Sie
in eine Produktionsumgebung wechseln.Anonyme Benutzer entfernen? [Y/n] <-- ENTER
... Erfolg!Normalerweise sollte root nur von 'localhost' aus verbunden werden dürfen. Dies
sichert, dass jemand das root-Passwort nicht über das Netzwerk erraten kann.Fernzugriff auf root verbieten? [Y/n] <-- ENTER
... Erfolg!Standardmäßig kommt MariaDB mit einer Datenbank namens 'test', auf die jeder
zugreifen kann. Dies ist ebenfalls nur für Tests gedacht und sollte entfernt
werden, bevor Sie in eine Produktionsumgebung wechseln.Testdatenbank und Zugriff darauf entfernen? [Y/n] <-- ENTER
- Testdatenbank wird gelöscht...
... Erfolg!
- Berechtigungen auf Testdatenbank werden entfernt...
... Erfolg!Das Aktualisieren der Berechtigungstabellen stellt sicher, dass alle bisher
getätigten Änderungen sofort wirksam werden.Berechtigungstabellen jetzt aktualisieren? [Y/n] <-- ENTER
... Erfolg!Aufräumen...Fertig! Wenn Sie alle oben genannten Schritte abgeschlossen haben, sollte Ihre
MariaDB-Installation jetzt sicher sein.Danke, dass Sie MariaDB verwenden!
[root@example ~]#[root@server1 ~]# mysql_secure_installation
4 Nginx installieren
Nginx ist als Paket von nginx.org verfügbar, das wir wie folgt installieren können:
yum install nginxDann erstellen wir die Systemstartlinks für nginx und starten es:
systemctl enable nginx.service
systemctl start nginx.serviceEs besteht die Möglichkeit, dass Sie einen Fehler wie “Port 80 bereits in Verwendung” erhalten, die Fehlermeldung wird wie folgt aussehen:
[root@server1 ~]# service nginx start
Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
[FAILED]
[root@server1 ~]#Dann bedeutet es, dass möglicherweise der Apache-Dienst dort läuft. Stoppen Sie den Dienst und starten Sie den Dienst für NGINX wie folgt:
systemctl stop httpd.service
yum remove httpd
systemctl disable httpd.servicesystemctl enable nginx.service
systemctl start nginx.serviceUnd öffnen Sie die HTTP- und HTTPS-Ports in der Firewall:
firebase-cmd --permanent --zone=public --add-service=http
firebase-cmd --permanent --zone=public --add-service=https
firebase-cmd --reloadDie resultierende Ausgabe in der Shell sieht wie folgt aus:
[root@example ~]# firewall-cmd --permanent --zone=public --add-service=http
erfolg
[root@example ~]# firewall-cmd --permanent --zone=public --add-service=https
erfolg
[root@example ~]# firewall-cmd --reload
erfolg
[root@example ~]#Geben Sie die IP-Adresse oder den Hostnamen Ihres Webservers in einen Browser ein (z. B. http://192.168.1.105), und Sie sollten die Willkommensseite von nginx sehen:

Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.