LAMP Stack mit PHP 8 und phpMyAdmin installieren

LAMP = Linux, Apache, MySQL (MariaDB), PHP

Diese Anleitung zeigt, wie Sie schnell und einfach einen sog. LAMP Stack mit phpMyAdmin Webinterface installieren können.

Zuletzt aktualisiert am: 29.06.2023

Inhaltsverzeichnis


Vorbereitungen

  1. Öffnen Sie auf Ihrem PC ein Terminal. Unter Windows können Sie dafür das Windows Terminal oder die Eingabeaufforderung benutzen. Unter Linux einfach das normale Terminal.
  2. Verbinden Sie sich nun auf Ihrem V- oder Root-Server über SSH mit diesem Befehl: ssh benutzername@server
  3. Bringen Sie das System auf den neusten Stand: apt update && apt upgrade -y

Paketquellen

  1. Fügen Sie die benötigten Paketquelle zu Ihrem System hinzu.

    Für Debian:

    1. Zuerst muss der Schlüssel für die Paketquelle hinzugefügt werden. Hier der Befehl dazu: wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
    2. Nun kann die Paketquelle hinzugefügt werden. echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list

    Für Ubuntu:

    1. Installieren Sie das benötigte Paket "software-properties-common" mit diesem Befehl apt install software-properties-common -y
    2. Nun kann die Paketquelle hinzugefügt werden. add-apt-repository ppa:ondrej/php
  2. Aktualisieren Sie die Paketlisten mit dem Befehl apt update

LAMP und PHP-Erweiterungen

  1. Nun wird der LAMP Stack in einem Zug installiert. Der Befehl lautet: apt install apache2 mariadb-server mariadb-client php
  2. (OPTIONAL) (EMPFOHLEN) Mit folgendem Befehl können Sie die standard Erweiterungen von PHP installieren: apt install php8.0-{common,intl,xml,gd,bcmath,zip,curl,mysql,mbstring,imagick} -y

    Um eine neuere PHP Version zu installieren, so ersetzen sie das php8.0 einfach durch ein php8.2

MariaDB und phpMyAdmin

  1. Jetzt sollte der MariaDB Server konfiguriert werden. Mit dem Befehl mysql_secure_installation wird dieser Vorgang angestoßen. In der ersten Frage, möchte der Assistent ein Passwort haben. Drücken Sie einfach die ENTER Taste und geben Sie bei der nächsten Frage bezüglich des Root Passwortes einfach "n" ein und drücken Sie die ENTER Taste. Bestätigen Sie nun alle darauffolgenden Fragen (Löschung des anonymen Benutzer usw.) mit einem y und anschließend ENTER. Jetzt ist der MariaDB Server fertig installiert, konfiguriert und einsatzbereit.
  2. Wechseln Sie in das Verzeichnis, in welches phpMyAdmin installiert werden soll. Ich empfehle dafür einfach /usr/share/ zu nehmen. Nutzen Sie diesen Befehl zum Wechseln: cd /usr/share/
  3. Laden Sie phpMyAdmin mit diesem Befehl herunter: wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip -O phpmyadmin.zip
  4. Nun muss das Archiv noch entpackt werden. Das geht so: unzip phpmyadmin.zip
  5. Das Archiv selber kann nun gelöscht werden: rm phpmyadmin.zip
  6. Bennen Sie nun den entpackten Ordner in "phpmyadmin" um: mv phpMyAdmin-*-all-languages phpmyadmin
  7. phpMyAdmin speichert temporäre Dateien in dem "tmp" Ordner ab, welcher noch erstellt werden muss: mkdir phpmyadmin/tmp
  8. Damit der Webserver auf das Verzeichnis zugreifen darf, muss der Benutzer "www-data" Lese- und Schreibrechte auf den Ordner "phpmyadmin" bekommen. Geben Sie mit dem folgenden Befehl die Besitzerrechte des Ordners an den "www-data" Benutzer weiter: chown -R www-data:www-data phpmyadmin/
  9. Vergeben Sie nun die passenden Rechte auf das Verzeichnis für den "www-data" Benutzer: chmod -R 0755 phpmyadmin/
  10. Um nun phpMyAdmin erreichbar zu machen, muss der Pfad ("/usr/share/phpmyadmin/") im Webserver als sog. Alias gesetzt werden. Dafür erstellen Sie eine neue Konfigurationsdatei mit dem Befehl nano /etc/apache2/conf-available/phpmyadmin.conf. Fügen Sie im nun geöffneten Editor folgende Konfiguration ein: Alias /phpmyadmin /usr/share/phpmyadmin

    <Directory /usr/share/phpmyadmin>
        Options SymLinksIfOwnerMatch
        DirectoryIndex index.php
    </Directory>

    # Disallow web access to unimportant directories
    <Directory /usr/share/phpmyadmin/templates>
        Require all denied
    </Directory>
    <Directory /usr/share/phpmyadmin/libraries>
        Require all denied
    </Directory>
    <Directory /usr/share/phpmyadmin/setup/lib>
        Require all denied
    </Directory>
  11. Speichern Sie Ihre Änderungen im Editor nun mit STRG + O und ENTER und beenden Sie ihn anschließend mit STRG + X.
  12. Damit nun die Konfiguration auch Wirkung zeigt, muss diese erst aktiviert werden: a2enconf phpmyadmin
  13. Laden Sie den Webserver nun neu: systemctl reload apache2
  14. Um sich nun in phpMyAdmin anzumelden, ist ein Benutzer erforderlich, welcher noch erstellt werden muss. Dafür führen Sie mysql -u rootaus, um sich in die MariaDB Konsole einzuloggen und anschließend mit CREATE USER 'deinnutzername'@'localhost' IDENTIFIED BY 'deinpasswort'; einen neuen Benutzer zu erstellen.
    Achtung
    Vergessen Sie nicht, den Benutzername und das Passwort im Befehl zu ändern!
    Sie können sich nun unter Ihrer Domain/IP-Adresse mit dem "/phpmyadmin/" Anhängsel auf phpMyAdmin mit Ihrem oben erstellten Benutzer aufschalten.
  15. Ihr Webverzeichnis liegt standardmäßig unter "/var/www/html/". Dort können Sie nun eigene Webseiten/Daten ablegen, welche dann über den Webserver erreichbar sind.