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:
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:
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.