GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie LAMP Stack auf Debian 10 Buster Server/Desktop

Dieses Tutorial zeigt Ihnen, wie Sie Apache, MariaDB und PHP7.3 (LAMP-Stack) auf Debian 10 Buster installieren. Ein Software-Stack ist eine Reihe von Software-Tools, die gebündelt sind. LAMP steht für L inux, A pache, M ariaDB/M ySQL und P HP, die alle Open Source sind und kostenlos verwendet werden können. Es ist der am weitesten verbreitete Software-Stack, der dynamische Websites und Webanwendungen unterstützt. Linux ist das Betriebssystem; Apache ist der Webserver; MariaDB/MySQL ist der Datenbankserver und PHP ist die serverseitige Skriptsprache, die für die Generierung dynamischer Webseiten verantwortlich ist.

Alle vier Komponenten sind kostenlos und Open Source. Da MySQL jetzt jedoch im Besitz von Oracle ist und die Möglichkeit besteht, dass Oracle es in ein Closed-Source-Produkt umwandelt, werden wir uns für MariaDB anstelle von MySQL entscheiden.

Voraussetzungen für die Installation von LAMP Stack auf Debian 10 Buster

Um diesem Tutorial zu folgen, benötigen Sie ein Debian 10-Betriebssystem, das auf Ihrem lokalen Computer oder auf einem Remote-Server ausgeführt wird.

Wenn Sie nach einem VPS (Virtual Private Server) suchen, können Sie über diesen speziellen Link ein Konto bei Vultr registrieren, um ein kostenloses Guthaben von 50 $ zu erhalten (nur für neue Benutzer). Und wenn Sie einen LAMP-Stack mit einem Domainnamen einrichten müssen, empfehle ich, Domainnamen von NameCheap zu kaufen, da der Preis niedrig ist und sie Whois-Datenschutz kostenlos bieten.

Bitte beachten Sie, dass Sie Root-Rechte haben müssen, wenn Sie Software unter Debian installieren. Sie können sudo hinzufügen am Anfang eines Befehls oder verwenden Sie su - Befehl, um zum Root-Benutzer zu wechseln.

Schritt 1:Softwarepakete aktualisieren

Bevor wir den LAMP-Stack installieren, ist es eine gute Idee, das Repository und die Softwarepakete zu aktualisieren. Führen Sie den folgenden Befehl auf Ihrem Debian 10-Betriebssystem aus.

sudo apt update

sudo apt upgrade

Schritt 2:Apache-Webserver auf Debian 10 installieren

Geben Sie den folgenden Befehl ein, um den Apache-Webserver zu installieren. Die apache2-utils -Paket installiert einige nützliche Dienstprogramme, wie z. B. das Apache-HTTP-Server-Benchmarking-Tool ab und das Benutzerauthentifizierungs-Verwaltungstool htpasswd .

sudo apt install apache2 apache2-utils

Nach der Installation sollte Apache automatisch gestartet werden. Überprüfen Sie seinen Status mit systemctl .

systemctl status apache2

Beispielausgabe:

● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-07-11 13:30:35 UTC; 4min 31s ago
     Docs: https://httpd.apache.org/docs/2.4/
  Process: 17962 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
 Main PID: 17966 (apache2)
    Tasks: 55 (limit: 545)
   Memory: 4.8M
   CGroup: /system.slice/apache2.service
           ├─17966 /usr/sbin/apache2 -k start
           ├─17967 /usr/sbin/apache2 -k start
           └─17968 /usr/sbin/apache2 -k start

Wenn es nicht läuft, verwenden Sie systemctl, um es zu starten.

sudo systemctl start apache2

Es ist auch eine gute Idee, Apache so zu aktivieren, dass er beim Booten automatisch startet.

sudo systemctl enable apache2

Überprüfen Sie die Apache-Version:

sudo apache2 -v

Ausgabe:

Server version: Apache/2.4.38 (Debian)
Server built:   2019-04-07T18:15:40

Geben Sie nun die öffentliche IP-Adresse Ihres Debian 10-Servers in die Adressleiste des Browsers ein. Sie sollten „Es funktioniert!“ sehen. Webseite, was bedeutet, dass der Apache-Webserver ordnungsgemäß ausgeführt wird. Wenn Sie LAMP auf Ihrem lokalen Debian 10-Computer installieren, sollten Sie 127.0.0.1 eingeben oder localhost in der Adressleiste des Browsers.

Wenn die Verbindung abgelehnt wird oder nicht hergestellt werden kann, verhindert möglicherweise eine Firewall eingehende Anfragen an TCP-Port 80. Wenn Sie die iptables-Firewall verwenden, müssen Sie den folgenden Befehl ausführen, um TCP-Port 80 zu öffnen.

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

Wenn Sie eine UFW-Firewall verwenden, führen Sie diesen Befehl aus, um TCP-Port 80 zu öffnen.

sudo ufw allow http

Jetzt müssen wir www-data festlegen (Apache-Benutzer) als Eigentümer des Dokumentstammverzeichnisses (auch bekannt als Webstammverzeichnis). Standardmäßig gehört es dem Root-Benutzer.

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

Standardmäßig verwendet Apache den System-Hostnamen als globalen ServerName . Wenn der Systemhostname im DNS nicht aufgelöst werden kann, wird nach dem Ausführen von sudo apache2ctl -t wahrscheinlich der folgende Fehler angezeigt Befehl.

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

Um dieses Problem zu lösen, können wir einen globalen ServerName setzen im Apachen. Verwenden Sie den Nano-Befehlszeilen-Texteditor, um eine neue Konfigurationsdatei zu erstellen.

sudo nano /etc/apache2/conf-available/servername.conf

Fügen Sie dieser Datei die folgende Zeile hinzu.

ServerName localhost

Speichern und schließen Sie die Datei. Um eine Datei im Nano-Texteditor zu speichern, drücken Sie Ctrl+O , und drücken Sie dann zur Bestätigung die Eingabetaste. Drücken Sie zum Beenden Ctrl+X . Aktivieren Sie dann diese Konfigurationsdatei.

sudo a2enconf servername.conf

Laden Sie Apache neu, damit die Änderung wirksam wird.

sudo systemctl reload apache2

Wenn Sie nun sudo apache2ctl -t ausführen Befehl erneut ausführen, wird die obige Fehlermeldung nicht angezeigt.

Schritt 3:MariaDB-Datenbankserver auf Debian 10 installieren

MariaDB ist ein Drop-in-Ersatz für MySQL. Geben Sie den folgenden Befehl ein, um es unter Debian 10 zu installieren.

sudo apt install mariadb-server mariadb-client

Nach der Installation sollte der MariaDB-Server automatisch gestartet werden. Verwenden Sie systemctl um seinen Status zu überprüfen.

systemctl status mariadb

Ausgabe:

● mariadb.service - MariaDB 10.3.15 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-07-11 13:57:03 UTC; 16s ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
 Main PID: 18566 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 31 (limit: 545)
   Memory: 73.9M
   CGroup: /system.slice/mariadb.service
           └─18566 /usr/sbin/mysqld

Wenn es nicht läuft, starten Sie es mit diesem Befehl:

sudo systemctl start mariadb

Damit MariaDB beim Booten automatisch startet, führen Sie

aus
sudo systemctl enable mariadb

Führen Sie nun das Sicherheitsskript nach der Installation aus.

sudo mysql_secure_installation

Wenn Sie aufgefordert werden, das MariaDB-Root-Passwort einzugeben, drücken Sie die Eingabetaste, da das Root-Passwort noch nicht festgelegt ist. Geben Sie dann y ein um das Root-Passwort für den MariaDB-Server festzulegen.

Als nächstes können Sie einfach die Eingabetaste drücken, um alle verbleibenden Fragen zu beantworten. Dadurch wird der anonyme Benutzer entfernt, die Remote-Root-Anmeldung deaktiviert und die Testdatenbank entfernt. Dieser Schritt ist eine Grundvoraussetzung für die MariaDB-Datenbanksicherheit. (Beachten Sie, dass der Buchstabe Y wird groß geschrieben, was bedeutet, dass es die Standardantwort ist.)

Standardmäßig verwendet das MaraiDB-Paket auf Debian unix_socket, um die Benutzeranmeldung zu authentifizieren, was im Grunde bedeutet, dass Sie den Benutzernamen und das Passwort des Betriebssystems verwenden können, um sich bei der MariaDB-Konsole anzumelden. Sie können also den folgenden Befehl ausführen, um sich anzumelden, ohne das MariaDB-Root-Passwort anzugeben.

sudo mariadb -u root

oder

sudo mysql -u root

Führen Sie zum Beenden

aus
exit;

Überprüfen Sie die Versionsinformationen des MariaDB-Servers.

mariadb --version

Ausgabe:

mariadb Ver 15.1 Distrib 10.3.15-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Schritt 4:Installieren Sie PHP7.3 auf Debian 10

Zum Zeitpunkt der Erstellung dieses Artikels ist PHP7.3 die neueste stabile Version von PHP und weist gegenüber früheren Versionen eine geringfügige Leistungsverbesserung auf. Geben Sie den folgenden Befehl ein, um PHP7.3 aus dem Debian 10-Repository zu installieren.

sudo apt install php7.3 libapache2-mod-php7.3 php7.3-mysql php-common php7.3-cli php7.3-common php7.3-json php7.3-opcache php7.3-readline

Aktivieren Sie das Apache php7.3-Modul und starten Sie dann den Apache-Webserver neu.

sudo a2enmod php7.3

sudo systemctl restart apache2

Überprüfen Sie die PHP-Versionsinformationen.

php --version

Ausgabe:

PHP 7.3.4-2 (cli) (built: Apr 13 2019 19:05:48) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.4-2, Copyright (c) 1999-2018, by Zend Technologies

Um PHP-Skripte mit dem Apache-Server zu testen, müssen wir eine info.php erstellen Datei im Web-Root-Verzeichnis mit einem Befehlszeilen-Texteditor wie Nano.

sudo nano /var/www/html/info.php

Fügen Sie den folgenden PHP-Code in die Datei ein.

<?php phpinfo(); ?>

Speichern und schließen Sie die Datei. (Um eine Datei im Nano-Texteditor zu speichern, drücken Sie Ctrl+O , und drücken Sie dann zur Bestätigung die Eingabetaste. Drücken Sie zum Beenden Ctrl+X .)

Geben Sie nun in der Adressleiste des Browsers server-ip-address/info.php ein . Ersetzen Sie sever-ip-address mit deiner aktuellen IP. Wenn Sie dieser Anleitung auf Ihrem lokalen Computer folgen, geben Sie 127.0.0.1/info.php ein oder localhost/info.php .

Sie sollten die PHP-Informationen Ihres Servers sehen. Dies bedeutet, dass PHP-Skripte ordnungsgemäß mit dem Apache-Webserver ausgeführt werden können. Sie können feststellen, dass Zend OPcache aktiviert ist.

Wie man PHP-FPM mit Apache ausführt

Grundsätzlich gibt es zwei Möglichkeiten, PHP-Code mit dem Apache-Webserver auszuführen:

  • Apache-PHP-Modul
  • PHP-FPM.

In den obigen Schritten wird das PHP7.3-Modul verwendet, um PHP-Code zu verarbeiten, was normalerweise in Ordnung ist. Aber in einigen Fällen müssen Sie PHP-Code stattdessen mit PHP-FPM ausführen. So geht's.

Deaktivieren Sie das Apache PHP7.3-Modul.

sudo a2dismod php7.3

Installieren Sie PHP-FPM.

sudo apt install php7.3-fpm

Aktivieren Sie proxy_fcgi und setenvif Modul.

sudo a2enmod proxy_fcgi setenvif

Aktivieren Sie /etc/apache2/conf-available/php7.3-fpm.conf Konfigurationsdatei.

sudo a2enconf php7.3-fpm

Starten Sie Apache neu, damit die Änderungen wirksam werden.

sudo systemctl restart apache2

Wenn Sie jetzt die info.php aktualisieren Seite in Ihrem Browser finden Sie, dass die Server-API in FPM/FastCGI geändert wurde , was bedeutet, dass der Apache-Webserver PHP-Code mit PHP-FPM ausführt.

Nächster Schritt

Herzlichen Glückwunsch! Sie haben Apache, MariaDB und PHP7 erfolgreich auf Debian 10 Buster installiert. Zur Sicherheit Ihres Servers sollten Sie die Datei info.php jetzt löschen, um neugierige Blicke zu vermeiden.

sudo rm /var/www/html/info.php

Ich hoffe, dieses Tutorial hat Ihnen geholfen, den LAMP-Stack unter Debian 10 Buster zu installieren . Sie können sich auch das folgende Tutorial ansehen, um phpMyAdmin zu installieren, ein webbasiertes MariaDB/MySQL-Verwaltungstool

  • Installieren Sie phpMyAdmin mit Apache (LAMP) auf Debian 10 Buster

Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter um neue Anleitungen zu erhalten.


Debian
  1. So richten Sie einen LAMP-Server unter Debian 10 Buster ein

  2. Installieren Sie den LAMP-Stack unter Debian 11

  3. So installieren Sie LAMP Server unter Debian 9

  4. So installieren und konfigurieren Sie PHP und Apache (LAMP-Stack) unter Debian 11

  5. So installieren Sie MySQL Server auf Debian 10 Buster

So installieren Sie den LAMP-Stack unter Debian 8

So installieren Sie den Apache-Webserver unter Debian 11

So installieren Sie den LAMP-Stack unter Debian 11

So installieren und konfigurieren Sie LAMP unter Debian 11 (Bullseye)

So installieren Sie einen Debian 10 (Buster) Minimalserver

So installieren Sie Apache unter Debian 7