Tutorials  /  Ubuntu

WordPress auf Ubuntu 24.04 mit LEMP Stack installieren

Ccentron Redaktion · August 2025 ·8 Min. Lesezeit ·Ubuntu, Tutorial

WordPress ist ein quelloffenes Content-Management-System (CMS), das mit PHP entwickelt und von MySQL oder MariaDB unterstützt wird. Ursprünglich als Blogging-Plattform gestartet, hat es sich zu einer der beliebtesten Lösungen für den Aufbau von Websites entwickelt und betrieb bis Dezember 2024 mehr als 22 % der Top eine Million Websites.

In dieser Anleitung erfahren Sie, wie Sie WordPress auf einem Ubuntu 24.04 Server mit dem LEMP-Stack (Linux, Nginx, MySQL, PHP) installieren und konfigurieren. Sie installieren die benötigte Software, sichern Ihre Umgebung ab und richten WordPress so ein, dass es dynamische Inhalte über Ihren eigenen Server ausliefert.

Voraussetzungen

Stellen Sie vor Beginn sicher, dass Sie folgende Bedingungen erfüllen:

  • Zugriff auf einen Ubuntu 24.04 Server mit einem Nicht-Root-Benutzer mit Sudo-Rechten.
  • Eine Domain-A-Record, die auf die IP Ihres Servers verweist (z. B. www.example.com), falls Sie eine eigene Domain nutzen.
VM

Passende Infrastruktur bei centron

Ubuntu-Server ohne eigene Hardware: ccloud³ VMs mit vollem Root-Zugriff ab 3,12 € im Monat, stundengenau abgerechnet und in Sekunden bereit. Cloud Server mieten →

Nginx Webserver installieren

Installieren Sie Nginx auf Ihrem System:

Konsole
$ sudo apt install nginx -y

Starten Sie den Nginx-Dienst:

Konsole
$ sudo systemctl start nginx

Aktivieren Sie Nginx, damit es beim Systemstart automatisch startet:

Konsole
$ sudo systemctl enable nginx

Überprüfen Sie den Status, um sicherzustellen, dass Nginx läuft:

Konsole
$ sudo systemctl status nginx

Beispielausgabe:

YAML
● nginx.service - nginx - high performance web server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled)
     Active: active (running) since Sat 2025-04-26 13:18:09 WAT; 9min ago
       Docs: https://nginx.org/en/docs/
   Main PID: 1629 (nginx)
...

Firewall konfigurieren

Passen Sie nun die Firewall-Einstellungen mit UFW (Uncomplicated Firewall) an, um HTTP- und HTTPS-Datenverkehr zuzulassen.

Überprüfen Sie den aktuellen Firewall-Status:

Konsole
$ sudo ufw status

Erlauben Sie HTTP- und HTTPS-Verkehr mit dem Nginx Full-Profil:

Konsole
$ sudo ufw allow "Nginx Full"

Laden Sie UFW neu, um die Änderungen zu übernehmen:

Konsole
$ sudo ufw reload

Prüfen Sie die aktualisierten Regeln:

Konsole
$ sudo ufw status

Erwartete Ausgabe:

Code
To                         Action      From
--                         ------      ----
Nginx Full                 ALLOW       Anywhere
Nginx Full (v6)            ALLOW       Anywhere (v6)

MySQL-Datenbank installieren

Installieren und konfigurieren Sie nun den MySQL-Datenbankserver für WordPress.

Installieren Sie das MySQL-Server-Paket:

Konsole
$ sudo apt install mysql-server -y

Überprüfen Sie, ob MySQL korrekt installiert wurde:

Konsole
$ mysql --version

Beispielausgabe:

Code
mysql  Ver 8.0.36 for Linux on x86_64 (MySQL Community Server - GPL)

Starten Sie den MySQL-Dienst:

Konsole
$ sudo systemctl start mysql

Aktivieren Sie MySQL für den automatischen Start beim Booten:

Konsole
$ sudo systemctl enable mysql

Überprüfen Sie, ob der Dienst aktiv läuft:

Konsole
$ sudo systemctl status mysql

Beispielausgabe:

YAML
● mysql.service - MySQL Community Server
     Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled)
     Active: active (running) since Sat 2025-04-26 13:42:56 WAT; 2min ago
   Main PID: 43442 (mysqld)
...

Führen Sie zur Absicherung das integrierte Skript zur MySQL-Sicherheitskonfiguration aus:

Konsole
$ sudo mysql_secure_installation

Datenbank und Benutzer für WordPress anlegen

WordPress benötigt eine eigene MySQL-Datenbank für Inhalte, Einstellungen und Benutzerdaten. Gehen Sie wie folgt vor:

Melden Sie sich als Root-Benutzer in der MySQL-Shell an:

Konsole
$ sudo mysql

Erstellen Sie die Datenbank für WordPress:

Code
mysql> CREATE DATABASE wordpressdb;

Legen Sie einen eigenen Benutzer mit sicherem Passwort an:

Code
mysql> CREATE USER 'wordpressdbuser'@'localhost' IDENTIFIED BY 'strongpassword';

Weisen Sie dem Benutzer alle Rechte auf der WordPress-Datenbank zu:

Code
mysql> GRANT ALL PRIVILEGES ON wordpressdb.* TO 'wordpressdbuser'@'localhost';

Aktualisieren Sie die Rechte mit folgendem Befehl:

Code
mysql> FLUSH PRIVILEGES;

Überprüfen Sie, ob die Datenbank erstellt wurde:

Code
mysql> SHOW DATABASES;

Beispielausgabe:

Code
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| wordpressdb        |
+--------------------+

Prüfen Sie, ob der Benutzer erstellt wurde:

Code
mysql> SELECT User, Host FROM mysql.user WHERE User = 'wordpressdbuser';

Beispielausgabe:

Code
+-----------------+-----------+
| User            | Host      |
+-----------------+-----------+
| wordpressdbuser | localhost |
+-----------------+-----------+

Bestätigen Sie die zugewiesenen Rechte:

Code
mysql> SHOW GRANTS FOR 'wordpressdbuser'@'localhost';

Beispielausgabe:

Code
+--------------------------------------------------------------------------+
| Grants for wordpressdbuser@localhost                                     |
+--------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `wordpressdbuser`@`localhost`                      |
| GRANT ALL PRIVILEGES ON `wordpressdb`.* TO `wordpressdbuser`@`localhost` |
+--------------------------------------------------------------------------+

Verlassen Sie die MySQL-Shell:

Code
mysql> EXIT;

PHP und Erweiterungen installieren

WordPress benötigt PHP, um dynamische Inhalte zu erzeugen und eine Verbindung zur MySQL-Datenbank herzustellen. Beginnen Sie mit der Installation von PHP und den erforderlichen Modulen:

PHP und benötigte Pakete installieren:

Konsole
$ sudo apt install php php-cli php-common php-imap php-fpm php-snmp php-xml php-zip php-mbstring php-curl php-mysqli php-gd php-intl -y

Installierte PHP-Version überprüfen:

Konsole
$ php -v

Beispielausgabe:

Code
PHP 8.3.X (cli) (built: ...)

Prüfen, ob php-fpm aktiv ist:

Konsole
$ sudo systemctl status php8.3-fpm

WordPress herunterladen und installieren

Im nächsten Schritt wird WordPress heruntergeladen und eingerichtet:

Neueste WordPress-Version herunterladen:

Konsole
$ wget http://wordpress.org/latest.tar.gz

Heruntergeladenes Archiv entpacken:

Konsole
$ sudo tar -xvzf latest.tar.gz

Dateien nach Nginx-Webroot verschieben:

Konsole
$ sudo mv wordpress/* /var/www/html/

Dateibesitz anpassen:

Konsole
$ sudo chown -R www-data:www-data /var/www/html

In das Webroot-Verzeichnis wechseln:

Konsole
$ cd /var/www/html/

Standard-Nginx-Dateien entfernen:

Konsole
$ sudo rm index.html index.nginx-debian.html

Beispiel-Konfiguration von WordPress umbenennen:

Konsole
$ sudo mv wp-config-sample.php wp-config.php

Vorhandene WordPress-Dateien prüfen:

Konsole
$ ls -l

Sicherstellen, dass Dateien wie wp-config.php, wp-login.php und der Ordner wp-admin vorhanden sind.

Die wp-config.php Datei anpassen

WordPress benötigt Datenbankinformationen, um sich mit MySQL zu verbinden. Öffnen und bearbeiten Sie dazu die Konfigurationsdatei:

wp-config.php mit Editor öffnen:

Konsole
$ sudo nano wp-config.php

Datenbankinformationen eintragen:

Code
// Datenbankname für WordPress 
define( 'DB_NAME', 'wordpressdb' );

// MySQL-Datenbank-Benutzername 
define( 'DB_USER', 'wordpressdbuser' );

// Passwort des MySQL-Benutzers 
define( 'DB_PASSWORD', 'strongpassword' );

// MySQL-Host 
define( 'DB_HOST', 'localhost' );

Datei speichern und schließen. Achten Sie darauf, dass die Werte mit den zuvor eingerichteten Daten übereinstimmen.

Nginx Server Block für WordPress erstellen

Damit Nginx WordPress korrekt bedienen kann, wird ein eigener Server Block konfiguriert:

Aktiven PHP-FPM-Socket anzeigen:

Konsole
$ ls /var/run/php

Beispielausgabe:

Code
php8.3-fpm.pid  php8.3-fpm.sock  php-fpm.sock

Nginx-Standardkonfiguration bearbeiten:

Konsole
$ sudo nano /etc/nginx/sites-available/default

Beispielkonfiguration einfügen:

Code
server {
    listen 80;
    server_name www.example.com;

    root /var/www/html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;
    }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location = /favicon.ico {
        access_log off;
        log_not_found off;
        expires max;
    }

    location = /robots.txt {
        access_log off;
        log_not_found off;
    }

    error_page 404 /404.html;

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }

    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }

    location /wp-content/uploads/ {
        location ~ \.php$ {
            deny all;
        }
    }
}

Konfiguration überprüfen:

Konsole
$ sudo nginx -t

Beispielausgabe:

Code
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Nginx neu starten:

Konsole
$ sudo systemctl restart nginx

Auf das WordPress-Dashboard zugreifen

Öffnen Sie einen Browser und rufen Sie http://www.example.com auf. Dort erscheint die Installationsseite von WordPress.

Wählen Sie Ihre Sprache, klicken Sie auf Fortfahren, geben Sie Titel, Benutzername, Passwort und E-Mail-Adresse ein und klicken Sie auf WordPress installieren. Anschließend melden Sie sich mit den erstellten Zugangsdaten im Dashboard an.

Fazit

In dieser Anleitung haben Sie WordPress auf Ubuntu 24.04 mit dem LEMP-Stack (Linux, Nginx, MySQL, PHP) eingerichtet. Sie haben Nginx konfiguriert, eine sichere MySQL-Datenbank erstellt, PHP mit allen benötigten Erweiterungen eingerichtet und WordPress für den produktiven Einsatz installiert.

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Ubuntu
Teilen
Noch offene Fragen?

Our team will help you with your specific setup - in German or English, by people who run the platform themselves.

War dieses Tutorial hilfreich?

Your answer is stored anonymously and helps us improve our tutorials.

Kommentare

No comments yet - be the first to ask a question about this tutorial.

Sign in to comment

Comments are open to centron customers. Sign in to your account to ask a question about this tutorial.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren