Für Cloud Server, migrierte Cloud Server, VPS und Dedicated Server auf denen Debian 11, Debian 12, Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04 oder Ubuntu 24.04 installiert ist. 

In diesem Artikel wird erklärt, wie Sie einen LAMP-Stack auf einem Cloud Server, einem migrierten Cloud Server, einem VPS oder einem Dedicated Server mit Debian 11, Debian 12, Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04 oder Ubuntu 24.04 installieren. Ein LAMP-Stack besteht aus dem Betriebssystem Linux und den Softwareanwendungen Apache, MySQL und PHP. Diese werden zusammen installiert, um dynamische Websites und Webanwendungen auf einem Server zu hosten.

So installieren Sie einen LAMP-Stack:

Voraussetzungen

Sie haben vor der Installation des LAMP-Stacks sichergestellt, dass Ihr Server über ausreichende Hardware-Kapazitäten verfügt.

Gehen Sie wie folgt vor, um Apache zu installieren:

Apache installieren

  • Um zu prüfen, ob ein Update verfügbar ist, geben Sie die folgenden Befehle ein:

    root@ubuntu:~# sudo apt update && sudo apt upgrade -y

  • Um Apache zu installieren, geben Sie den folgenden Befehl ein:

    root@ubuntu:~# apt install apache2

    Die Installation wird gestartet. Im Rahmen der Installation wird die folgende Meldung angezeigt:

    The following NEW packages will be installed:
      apache2 apache2-bin apache2-data apache2-utils bzip2 libapr1 libaprutil1
      libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.3-0 mailcap mime-support
      ssl-cert
    0 upgraded, 13 newly installed, 0 to remove and 0 not upgraded.
    Need to get 2,135 kB of archives.
    After this operation, 8,486 kB of additional disk space will be used.
    Do you want to continue? [Y/n]

  • Geben Sie [y] ein und drücken Sie [Enter].

    Apache wird installiert.
     
  • Um zu prüfen, ob Apache erfolgreich installiert und gestartet wurde, geben Sie die öffentliche IP-Adresse Ihres Servers im folgenden Format in Ihrem Webbrowser ein:

    http://IHRE-SERVER-IP-Adresse/

    Wenn Ihnen eine Testseite angezeigt wird, war die Installation von Apache erfolgreich.

Maria DB installieren (Debian 11 und Debian 12)

Debian 11 verwendet MariaDB als Standardersatz für MySQL. Um MariaDB zu installieren gehen Sie wie folgt vor:

  • Installieren Sie das MySQL Server Metapaket. Dieses Paket wird MariaDB als MySQL-Ersatz installieren. Um das Paket zu installieren, Geben Sie den folgenden Befehl ein:

    root@localhost:~# sudo apt install default-mysql-server

    Anschließend wird die folgende Meldung angezeigt:

    After this operation, 195 MB of additional disk space will be used.
    Do you want to continue? [Y/n]

  • Geben Sie [Y] ein.
  • Starten Sie den MariaDB-Dienst. Geben Sie hierzu den folgenden Befehl ein:

    root@localhost:~# sudo systemctl start mariadb

  • Aktivieren Sie den MariaDB-Dienst, um diesen beim Systemstart automatisch starten zu lassen:

    root@localhost:~# sudo systemctl enable mariadb

  • Um den Status des MariaDB-Dienstes zu prüfen, geben Sie den folgenden Befehl ein:

    root@localhost:~# sudo systemctl status mariadb

  • Um die Statusanzeige zu beenden, drücken Sie [q].
  • Loggen Sie sich in MySQL ein. Geben Sie hierzu den folgenden Befehl ein:

    root@localhost:~# sudo mysql -u root -p

  • Geben Sie das root-Passwort ein.
  • Geben Sie den folgenden Befehl ein und ersetzen Sie den Platzhalter MEIN_NEUES_PASSWORT durch das gewünschte Passwort.

    mysql> ]> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MEIN_NEUES_PASSWORT';

  • Um MySQL zu beenden, geben Sie den folgenden Befehl ein:

    mysql>exit

  • Um ein Sicherheitsskript auszuführen, dass einige gefährliche Standardeinstellungen entfernt und den Zugriff auf das Datenbanksystem einschränkt, geben Sie den folgenden Befehl ein:

    root@localhost:~# mysql_secure_installation 

    In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here.

    Enter current password for root (enter for none):

  • Geben Sie das root-Passwort für die MySQL-Datenbank ein, das Sie festgelegt haben.

    Anschließend wird die folgende Meldung angezeigt:

    OK, successfully used password, moving on…

    Setting the root password or using the unix_socket ensures that nobody can log into the MariaDB root user without the proper authorisation.

    You already have your root account protected, so you can safely answer 'n'.

    Switch to unix_socket authentication [Y/n]

  • Geben Sie [n] ein. Anschließend wird die folgende Meldung angezeigt:

    Switch to unix_socket authentication [Y/n] n
     ... skipping.

    You already have your root account protected, so you can safely answer 'n'.

    Change the root password? [Y/n]

  • Geben Sie [n] ein. Die folgende Meldung wird angezeigt:

    By default, a MariaDB installation has an anonymous user, allowing anyoneto log into MariaDB 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? [Y/n]

  • Um anonyme Benutzer zu entfernen, geben Sie [y] ein und drücken Sie [Enter]. Anschließend wird die folgende Meldung angezeigt:

    Disallow root login remotely? [Y/n]

  • Geben Sie [y] ein und drücken Sie [Enter]. Anschließend wird die folgende Meldung angezeigt:

    Remove test database and access to it?

  • Geben Sie [y] ein und drücken Sie [Enter]. Anschließend wird die folgende Meldung angezeigt:

    Reload privilege tables now? [Y/n]

  • Um die MySQL-Berechtigungstabellen neu zu laden, geben Sie [y] ein. Um die Eingabe zu bestätigen, drücken Sie [Enter].

MySQL installieren (Ubuntu 20.04, Ubuntu 22.04, Ubuntu 24.04)

  • Um MySQL zu installieren, geben Sie den folgenden Befehl ein:

    root@ubuntu:~# apt install mysql-server

    Nach der Eingabe des Befehls wird die folgende Meldung angezeigt:

    Need to get 28.6 MB of archives.
    After this operation, 240 MB of additional disk space will be used.
    Do you want to continue? [Y/n]

  • Geben Sie [y] ein und drücken Sie [Enter]. MySQL wird installiert.

  • Loggen Sie sich in MySQL ein. Geben Sie hierzu den folgenden Befehl ein:

    root@ubuntu:~# sudo mysql

  • Geben Sie den folgenden Befehl ein und ersetzen Sie den Platzhalter MEIN_NEUES_PASSWORT durch das gewünschte Passwort.

    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MEIN_NEUES_PASSWORT';

  • Um MySQL zu beenden, geben Sie den folgenden Befehl ein:

    mysql>exit

  • Um ein Sicherheitsskript auszuführen, dass einige gefährliche Standardeinstellungen entfernt und den Zugriff auf das Datenbanksystem einschränkt, geben Sie den folgenden Befehl ein:

    root@ubuntu:~# mysql_secure_installation

    Nach der Eingabe des Befehls wird die folgende Meldung angezeigt:

    Securing the MySQL server deployment.

    Anschließend wird die folgende Meldung angezeigt:

    VALIDATE PASSWORD PLUGIN 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 plugin?

    Press y|Y for Yes, any other key for No:

    Wenn Sie das VALIDATE PASSWORD PLUGIN aktivieren, werden Passwörter, die nicht den angegebenen Kriterien entsprechen, von MySQL mit einem Fehler abgelehnt. Dies kann zu Problemen führen, wenn Sie ein schwaches Passwort in Verbindung mit einer Software verwenden, die automatisch MySQL-Benutzerdaten konfiguriert. Aus diesem Grund empfehlen wir, diese Funktion nicht einzurichten. Verwenden Sie jedoch stets ein sicheres Passwort.

  • Um die Einrichtung des Validate Password Plugins zu überspringen, geben Sie [n] ein und drücken Sie [Enter]. Die folgende Meldung wird angezeigt:

    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? [Y/n]

  • Um anonyme Benutzer zu entfernen, geben Sie [y] ein und drücken Sie [Enter]. Anschließend wird die folgende Meldung angezeigt:

    Disallow root login remotely? [Y/n]

  • Geben Sie [y] ein und drücken Sie [Enter]. Anschließend wird die folgende Meldung angezeigt:

    Remove test database and access to it?

  • Geben Sie [y] ein und drücken Sie [Enter]. Anschließend wird die folgende Meldung angezeigt:

    Reload privilege tables now?

  • Um die MySQL-Berechtigungstabellen neu zu laden, geben Sie [y] ein. Um die Eingabe zu bestätigen, drücken Sie [Enter].

PHP installieren

Um die Skriptsprache PHP zu installieren, gehen Sie wie folgt vor:

  • Um das PHP-MySQL-Paket zu installieren, geben Sie den folgenden Befehl ein:

    root@ubuntu:~# apt install php libapache2-mod-php php-mysql

    Die folgende Meldung wird angezeigt:

    After this operation, 18.9 MB of additional disk space will be used.
    Do you want to continue? [Y/n]

  • Um die Installation fortzusetzen, geben Sie [y] ein. Drücken Sie anschließend [Enter].

Einstellungen in der Datei dir.conf anpassen

Wenn ein Benutzer keine spezifische Seite in der URL angibt, sucht Apache standardmäßig zunächst nach der Startseite mit dem Namen index.html. Um Apache so zu konfigurieren, dass die Datei index.php bei dieser Suche bevorzugt wird, gehen Sie wie folgt vor:

  • Um die Datei dir.conf mit dem Editor vi zu öffnen, geben Sie den folgenden Befehl ein:

    vi /etc/apache2/mods-enabled/dir.conf

Hinweise
  • Der Editor vi verfügt über einen Einfügemodus und einen Befehls- oder Kommandomodus. Den Einfügemodus können Sie mit der Taste [i] aufrufen. In diesem Modus werden die eingegebenen Zeichen sofort in den Text eingefügt. Um den Befehlsmodus aufzurufen, drücken Sie anschließend [ESC]. Wenn Sie den Befehlsmodus nutzen, werden Ihre Tastatureingaben als Befehl interpretiert.
  • vi kann nicht im Einfügemodus beendet werden. Rufen Sie daher stets den Befehlsmodus auf, um vi zu beenden.
  • Drücken Sie [i] und passen Sie den folgenden Eintrag an:

    <IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
    </IfModule>

  • Verschieben Sie den Eintrag index.php, so dass dieser hinter dem Eintrag DirectoryIndex steht.
  • Um den Befehlsmodus aufzurufen, drücken Sie [ESC]. Geben Sie anschließend den Befehl :wq ein, um den Text zu speichern und den Editor zu schließen.
  • Damit diese Änderungen übernommen werden, müssen Sie Apache neu starten. Um Apache neu zu starten, geben Sie den folgenden Befehl ein:

    root@ubuntu:~# systemctl restart apache2

PHP-Module installieren

Um die Funktionalität von PHP zu erweitern, können Sie zusätzliche Module installieren.

Um die verfügbaren Optionen für PHP-Module und –Bibliotheken anzuzeigen, übergeben Sie die Ergebnisse von apt search an less. Less ist ein Pager, mit dem Sie Textdateien in der Kommandozeile anzeigen können. Darüber hinaus können Sie sich mit less in Dokumenten beliebig bewegen. Geben Sie hierzu den folgenden Befehl ein:

root@ubuntu:~# apt search php- | less

Um nach oben oder nach unten zu scrollen, verwenden Sie die Pfeiltasten. Um less zu beenden drücken Sie [q].


Um ausführliche Informationen zu einem PHP-Modul zu erhalten, geben Sie den folgenden Befehl ein:

root@ubuntu:~# apt show package_name

Beispiel:

root@ubuntu:~# apt show php-codesniffer


Um die gewünschten PHP-Module zu installieren, geben Sie den unten stehenden Befehl ein: 

root@ubuntu:~# apt install package1 package2

Beispiel:

root@ubuntu:~# apt install php-codesniffer php-cli

PHP testen

Um zu testen, ob PHP ordnungsgemäß installiert wurde, erstellen Sie mit dem Editor ein Skript. Dieses muss im Verzeichnis /var/www/html gespeichert werden.  Gehen Sie wie folgt vor, um das Skript zu erstellen und PHP zu testen:

  • Um das Skript im Verzeichnis /var/www/html zu erstellen, geben Sie den folgenden Befehl ein:

    vi /var/www/html/info.php

    Der Editor vi öffnet sich.

  • Drücken Sie die Taste [i] und geben Sie anschließend den folgenden PHP-Code ein:

    <?php
    phpinfo();
    ?>

  • Um den Befehlsmodus aufzurufen, drücken Sie [ESC]. Geben Sie anschließend den Befehl :wq ein, um den Text zu speichern und den Editor zu schließen.
  • Um zu testen, ob die Inhalte des PHP-Skripts angezeigt werden, rufen Sie die entsprechende URL im folgenden Format in Ihrem Webbrowser auf:

    http://meineserverip-adresse /info.php

  • Um die angezeigte Seite wieder zu entfernen, geben Sie den folgenden Befehl ein:

    rm /var/www/html/info.php