LAMP Stack auf Debian 11 installieren

Der LAMP Stack ist ein gemeinsamer Satz von Open-Source-Tools, die verwendet werden, um Webseiten und Anwendungen im Web zu hosten. LAMP Stack ist eine Webentwicklungsplattform, die Linux als Betriebssystem, Apache als Webserver, MariaDB/MySQL als Datenbankserver und PHP als Skriptsprache verwendet. Es ist so weit verbreitet und bietet ein bewährtes Set an Software für die Bereitstellung von hochperformanten Webanwendungen.

In diesem Tutorial zeigen wir dir, wie du den LAMP-Stack auf Debian 11 installierst.

Voraussetzungen

  • Ein Server, auf dem Debian 11 läuft.
  • Ein gültiger Domainname, der auf die IP deines Servers zeigt.
  • Ein root-Passwort ist auf dem Server konfiguriert.

Apache Webserver installieren

Das Apache Webserver Paket ist im Debian 11 Standard Repository enthalten. Du kannst es installieren, indem du einfach den folgenden Befehl ausführst:

apt-get install apache2 apache2-utils -y

Nachdem du den Apache Webserver installiert hast, überprüfe die installierte Version von Apache mit dem folgenden Befehl:

apache2 -v

Du solltest die folgende Ausgabe sehen:

Server version: Apache/2.4.48 (Debian)
Server built:   2021-08-12T11:51:47

Um den Apache-Dienst zu starten, führe den folgenden Befehl aus:

systemctl start apache2

Um den Apache-Dienst zu aktivieren, so dass er beim Systemstart startet, führe den folgenden Befehl aus:

systemctl enable apache2

Du kannst auch den vollständigen Status des Apache mit dem folgenden Befehl überprüfen:

apt-get install elinks
apache2ctl fullstatus

Du solltest die folgende Ausgabe sehen:

 Apache Server Status for localhost (via ::1)

   Server Version: Apache/2.4.48 (Debian)

   Server MPM: prefork

   Server Built: 2021-08-12T11:51:47

   --------------------------------------------------------------------------

   Current Time: Tuesday, 17-Aug-2021 09:29:41 UTC

   Restart Time: Tuesday, 17-Aug-2021 09:29:33 UTC

   Parent Server Config. Generation: 1

   Parent Server MPM Generation: 0

   Server uptime: 7 seconds

   Server load: 0.05 0.01 0.00

   Total accesses: 0 - Total Traffic: 0 kB - Total Duration: 0

   CPU Usage: u.03 s.02 cu0 cs0 - .714% CPU load

   0 requests/sec - 0 B/second

   1 requests currently being processed, 4 idle workers

Standardmäßig läuft der Apache auf Port 80, du kannst dies mit folgendem Befehl überprüfen:

ss -antpl | grep apache2

Du solltest die folgende Ausgabe erhalten:

LISTEN 0      511                *:80              *:*    users:(("apache2",pid=44022,fd=4),("apache2",pid=44021,fd=4),("apache2",pid=44020,fd=4),("apache2",pid=44019,fd=4),("apache2",pid=44018,fd=4),("apache2",pid=44017,fd=4))

Du kannst die Apache-Installation auch überprüfen, indem du die URL http://your-server-ip aufrufst. Du solltest die Apache-Testseite auf dem folgenden Bildschirm sehen:

Debian Standard Seite

MariaDB Datenbankserver installieren

MariaDB ist ein Datenbankmanagementsystem, das zum Speichern und Verwalten von Daten für deine Website verwendet wird. Du kannst es mit dem folgenden Befehl installieren:

apt-get install mariadb-server -y

Sobald MariaDB installiert ist, starte den MariaDB-Dienst und aktiviere ihn mit dem folgenden Befehl, damit er beim Systemstart gestartet wird:

systemctl start mariadb
systemctl enable mariadb

Du kannst auch den Status des MariaDB-Dienstes mit dem folgenden Befehl überprüfen:

systemctl status mariadb

Du solltest die folgende Ausgabe sehen:

? mariadb.service - MariaDB 10.3.31 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:25 UTC; 1min 36s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 1838 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 31 (limit: 2353)
     Memory: 66.1M
     CGroup: /system.slice/mariadb.service
             ??1838 /usr/sbin/mysqld

Es wird auch empfohlen, deine MariaDB-Installation zu sichern und ein MariaDB-Root-Passwort zu setzen. Du kannst das Skript mysql_secure_installation ausführen, um die MariaDB-Installation zu sichern:

mysql_secure_installation

Du wirst aufgefordert, ein MariaDB Root-Passwort zu setzen, anonyme Benutzer zu entfernen, den Root-Login aus der Ferne zu verbieten und die Testdatenbank zu entfernen, wie unten gezeigt:

Enter current password for root (enter for none): 
Change the root password? [Y/n] Y
New password: 
Re-enter new password: 
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Standardmäßig läuft MariaDB auf Port 3306. Du kannst dies mit dem folgenden Befehl überprüfen:

ss -antpl | grep mariadb

Du solltest den folgenden Befehl sehen:

LISTEN 0      80         127.0.0.1:3306      0.0.0.0:*    users:(("mariadbd",pid=12181,fd=15))

Um die MariaDB-Shell zu verbinden, führe den folgenden Befehl aus:

mysql -u root -p

Gib dein MariaDB Root-Passwort ein und drücke Enter, um dich mit der MariaDB-Shell zu verbinden. Sobald du verbunden bist, solltest du die folgende Ausgabe sehen:

Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 64
Server version: 10.5.11-MariaDB-1 Debian 11

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Führe nun den folgenden Befehl aus, um die MariaDB Version zu überprüfen:

MariaDB [(none)]> SELECT VERSION();

Du solltest die folgende Ausgabe sehen:

+-------------------+
| VERSION()         |
+-------------------+
| 10.5.11-MariaDB-1 |
+-------------------+
1 row in set (0.001 sec)

Install PHP Processing Language

PHP ist die Verarbeitungssprache, die verwendet wird, um PHP-Anwendungen auf dem Webserver zu bedienen. Standardmäßig ist die Version von PHP, die in Debian 11 verfügbar ist, PHP 7.4. Du kannst PHP mit anderen häufig verwendeten Erweiterungen mit dem folgenden Befehl installieren:

apt-get install php libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml -y

Sobald PHP installiert ist, überprüfe die PHP-Version mit dem folgenden Befehl:

php -v

Du solltest die folgende Ausgabe sehen:

PHP 7.4.21 (cli) (built: Jul  2 2021 03:59:48) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies

Create a Virtual Host for Apache

An diesem Punkt ist der LAMP-Stack auf deinem Server installiert. Nun musst du eine Konfigurationsdatei für einen virtuellen Apache-Host erstellen, um eine Anwendung zu hosten.

Hier werden wir ein example.com Verzeichnis erstellen, um eine PHP Seite zu hosten. Du kannst es mit dem folgenden Befehl erstellen:

mkdir /var/www/html/example.com

Setze als nächstes den Eigentümer des example.com Verzeichnisses auf www-data:

chown -R www-data:www-data /var/www/html/example.com

Als nächstes erstellst du eine Apache Virtual Host Konfigurationsdatei mit dem folgenden Befehl:

nano /etc/apache2/sites-available/example.com.conf

Füge die folgenden Zeilen hinzu:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName example.com
    DocumentRoot /var/www/html/example.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Speichere und schließe die Datei, aktiviere dann den virtuellen Host example.com und deaktiviere den standardmäßigen virtuellen Host mit dem folgenden Befehl:

a2ensite example.com.conf
a2dissite 000-default

Als nächstes überprüfe die virtuelle Hostdatei mit dem folgenden Befehl auf Syntaxfehler:

apache2ctl configtest

Wenn alles in Ordnung ist, solltest du die folgende Ausgabe sehen:

Syntax OK

Starte abschließend den Apache-Dienst neu, um die Konfigurationsänderungen zu übernehmen:

systemctl reload apache2

Du kannst auch den Status des Apache-Dienstes mit dem folgenden Befehl überprüfen:

systemctl status apache2

Du solltest die folgende Ausgabe sehen:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:30 UTC; 2min 56s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 2257 (apache2)
      Tasks: 55 (limit: 2353)
     Memory: 5.3M
     CGroup: /system.slice/apache2.service
             ??2257 /usr/sbin/apache2 -k start
             ??2259 /usr/sbin/apache2 -k start
             ??2260 /usr/sbin/apache2 -k start

Aug 21 04:13:30 debian11 systemd[1]: Starting The Apache HTTP Server...
Aug 21 04:13:30 debian11 apachectl[2246]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 216.9>
Aug 21 04:13:30 debian11 systemd[1]: Started The Apache HTTP Server.

Verify PHP Installation on Apache

Als nächstes musst du eine PHP-Beispieldatei erstellen, die über den Apache Webserver ausgeliefert wird. Du kannst eine phpinfo.php Datei in deinem example.com Verzeichnis erstellen:

nano /var/www/html/example.com/phpinfo.php

Füge die folgende Zeile ein:

<?php phpinfo(); ?>

Speichere und schließe die Datei, dann öffne deinen Webbrowser und rufe deine PHP-Seite über die URL http://example.com/phpinfo.php auf. Du solltest deine PHP Seite auf dem folgenden Bildschirm sehen:

PHP auf Debian 11

Fazit

In der obigen Anleitung haben wir erklärt, wie man den LAMP-Stack auf Debian 11 installiert. Du kannst nun damit beginnen, deine erste Webseite mit dem LAMP-Stack zu hosten. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.

Das könnte dich auch interessieren …