Dieses Tutorial zeigt Ihnen, wie Sie den LOMP-Stack installieren (OpenLiteSpeed, MariaDB und PHP8.0) auf Ubuntu 20.04/18.04. Ein Software-Stack ist eine Reihe von Software-Tools, die gebündelt sind. LOMP steht für Linux, OpenLiteSpeed, MariaDB/MySQL und PHP, die dynamische Websites und Webanwendungen unterstützen können. Linux ist das Betriebssystem; OpenLiteSpeed ist der Webserver; MariaDB/MySQL ist der Datenbankserver und PHP ist die serverseitige Skriptsprache, die für die Generierung dynamischer Webseiten verantwortlich ist.
Warum ist OpenLiteSpeed besser als Apache/Nginx
Zuvor haben wir besprochen, wie man den LAMP-Stack (Apache) und den LEMP-Stack (Nginx) installiert. Warum wechseln wir zu OpenLiteSpeed? Weil es viel leistungsfähiger ist.
- 5x mehr Anfragen pro Sekunde.
- LSAPI ermöglicht eine bessere PHP-Leistung als mod_PHP und PHP-FPM.
- Extrem geringer CPU- und Speicherbedarf.
- HTTP/3 . Da sich OpenLiteSpeed auf Geschwindigkeit konzentriert, übernimmt es neue Technologien schneller als Nginx.
- Eingebauter PageSpeed und ModSecurity Modul. Wenn Sie Nginx verwenden, müssen Sie diese beiden Module jedes Mal neu kompilieren, wenn Sie Nginx aktualisieren.
- Eingebauter Seiten-Cache Integration mit gängigen Webanwendungen wie WordPress, Magento, Joomla, Prestashop, Opencart, Drupal, xenForo, Laravel, Shopware und MediaWiki.
- Anti-DDoS-Verbindung und Bandbreitendrosselung.
- Eingebaute Brotli-Komprimierung für statische Dateien.
- Webbasiertes Admin-Panel.
Anforderungen
Um diesem Tutorial zu folgen, benötigen Sie ein Ubuntu 20.04/18.04-Betriebssystem, das auf einem Remote-Server ausgeführt wird.
Wenn Sie nach einem leistungsstarken VPS (Virtual Private Server) suchen, können Sie auf der ScalaHosting-Website ein Konto erstellen. Wählen Sie den selbstverwalteten Linux-VPS-Plan. Verwenden Sie den Gutscheincode linuxbabe2021
auf der Zahlungsseite um 100 $ zu sparen wenn Sie 12 Monate im Voraus bezahlen. Sie können dem unten verlinkten Tutorial folgen, um Ihren Linux-VPS-Server auf ScalaHosting richtig einzurichten.
- So erstellen Sie einen Linux-VPS-Server auf ScalaHosting
Und wenn Sie einen LOMP-Stack mit einem Domainnamen einrichten müssen, empfehle ich den Kauf von Domainnamen von NameCheap, da der Preis niedrig ist und Whois-Datenschutz lebenslang kostenlos ist.
Schritt 1:Softwarepakete aktualisieren
Bevor wir den LOMP-Stack installieren, empfiehlt es sich, das Repository und die Softwarepakete zu aktualisieren, indem Sie den folgenden Befehl auf Ihrem Ubuntu 20.04/18.04-Betriebssystem ausführen.
sudo apt update;sudo apt upgrade
Schritt 2:OpenLiteSpeed-Webserver installieren
OpenLiteSpeed ist nicht im standardmäßigen Ubuntu-Software-Repository enthalten, daher müssen wir es aus dem offiziellen Upstream-Repository installieren. Führen Sie den folgenden Befehl aus, um das OpenLiteSpeed-Repository zu Ihrem Ubuntu-System hinzuzufügen.
wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debian_repo.sh | sudo bash
Der obige Befehl importiert auch den OpenLiteSpeed GPG-Schlüssel in das Ubuntu-System, damit APT die Paketintegrität während der Installation überprüfen kann. Installieren Sie dann OpenLiteSpeed mit:
sudo apt install -y openlitespeed
Nach der Installation können wir OpenLiteSpeed so aktivieren, dass es beim Booten automatisch startet, indem wir den folgenden Befehl ausführen.
sudo systemctl enable lshttpd
Starten Sie dann OpenLiteSpeed mit diesem Befehl:
sudo systemctl start lshttpd
Überprüfen Sie nun den Status.
sudo systemctl status lshttpd
Beispielausgabe:
● lshttpd.service - OpenLiteSpeed HTTP Server Loaded: loaded (/etc/systemd/system/lshttpd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-05-31 04:59:06 EDT; 14min ago Main PID: 7213 (litespeed) CGroup: /system.slice/lshttpd.service ├─7213 openlitespeed (lshttpd - main) ├─7224 openlitespeed (lscgid) ├─7253 openlitespeed (lshttpd - #01) └─7254 openlitespeed (lshttpd - #02) May 31 04:59:04 focal systemd[1]: Starting OpenLiteSpeed HTTP Server... May 31 04:59:04 focal lswsctrl[7171]: [OK] litespeed: pid=7213. May 31 04:59:06 focal systemd[1]: Started OpenLiteSpeed HTTP Server.
„Aktiviert “ zeigt an, dass der automatische Start beim Booten aktiviert ist, und wir können sehen, dass OpenLiteSpeed ausgeführt wird. Wenn der obige Befehl nach dem Ausführen nicht sofort beendet wird. Sie müssen „q drücken ” um es zu beenden.
Überprüfen Sie die OpenLiteSpeed-Version.
/usr/local/lsws/bin/openlitespeed -v
Ausgabe:
LiteSpeed/1.6.21 Open module versions: modgzip 1.1 cache 1.62 modinspector 1.1 uploadprogress 1.1 mod_security 1.4 (built: Tue Apr 6 13:20:57 UTC 2021) module versions: modgzip 1.1 cache 1.62 modinspector 1.1 uploadprogress 1.1 mod_security 1.4
Standardmäßig lauscht OpenLiteSpeed auf Port 8088, wir müssen dafür sorgen, dass es auf Port 80 lauscht. Bearbeiten Sie die Hauptkonfigurationsdatei mit einem Befehlszeilen-Texteditor wie Nano.
sudo nano /usr/local/lsws/conf/httpd_config.conf
Suchen Sie die folgenden Zeilen
listener Default{ address *:8088 secure 0 map Example * }
Ändern Sie 8088
bis 80
.
listener Default{ address *:80 secure 0 map Example * }
Speichern und schließen Sie die Datei. Starten Sie dann OpenLiteSpeed neu.
sudo systemctl restart lshttpd
Hinweis :Wenn Sie andere Webserver wie Nginx auf dem Server ausführen, müssen Sie ihn stoppen und dann OpenLiteSpeed neu starten.
sudo systemctl stop nginx
Geben Sie nun die öffentliche IP-Adresse Ihres Ubuntu 20.04/18.04-Servers in die Adressleiste des Browsers ein. Sie sollten die Webseite „Herzlichen Glückwunsch“ sehen, was bedeutet, dass der OpenLiteSpeed-Webserver ordnungsgemäß ausgeführt wird.
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
Standardmäßig wird der OpenLiteSpeed-Webserver als nobody
ausgeführt user und nogroup
Gruppe. Das Standard-Stammverzeichnis für Dokumente ist /usr/local/lsws/Example/html
.
Schritt 3:MariaDB-Datenbankserver installieren
MariaDB ist ein Drop-in-Ersatz für MySQL. Es wurde von ehemaligen Mitgliedern des MySQL-Teams entwickelt, die befürchten, dass Oracle MySQL in ein Closed-Source-Produkt verwandeln könnte. Geben Sie den folgenden Befehl ein, um MariaDB auf Ubuntu 20.04/18.04 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.29 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 9161 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 9451) Memory: 64.7M CGroup: /system.slice/mariadb.service └─9161 /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
aussudo 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 die Eingabetaste drücken, um alle verbleibenden Fragen zu beantworten, wodurch der anonyme Benutzer entfernt, die Remote-Root-Anmeldung deaktiviert und die Testdatenbank entfernt wird. Dieser Schritt ist eine Grundvoraussetzung für die MariaDB-Datenbanksicherheit. (Beachten Sie, dass Y großgeschrieben wird, was bedeutet, dass es die Standardantwort ist. )
Standardmäßig verwendet das MaraiDB-Paket auf Ubuntu 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
Führen Sie zum Beenden
ausexit;
Überprüfen Sie die Versionsinformationen des MariaDB-Servers.
mariadb --version
Wie Sie sehen können, haben wir MariaDB 10.3.29 installiert.
mariadb Ver 15.1 Distrib 10.3.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Schritt 4:Installieren Sie PHP8.0
Wenn wir OpenLiteSpeed installieren, installiert es automatisch lsphp73
-Paket, das ein PHP 7.3-Build für OpenLiteSpeed ist. Wir können PHP8.0 mit dem folgenden Befehl installieren.
sudo apt install lsphp80 lsphp80-mysql lsphp80-common lsphp80-opcache lsphp80-curl
Überprüfen Sie die Versionsnummer.
/usr/local/lsws/lsphp80/bin/php8.0 -v
Beispielausgabe:
PHP 8.0.6 (cli) (built: May 7 2021 15:17:48) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.6, Copyright (c) Zend Technologies with Zend OPcache v8.0.6, Copyright (c), by Zend Technologies
Obwohl wir nur 5 PHP8.0-Pakete installiert haben, enthält der OpenLiteSpeed PHP-Build viele PHP-Module. Sie können aktivierte PHP-Module mit dem folgenden Befehl überprüfen.
/usr/local/lsws/lsphp80/bin/php8.0 --modules
Schritt 5:PHP testen
Es gibt eine phpinfo.php
Datei unter /usr/local/lsws/Example/html
Verzeichnis, sodass Sie server-ip-address/phpinfo.php
eingeben können in der Adressleiste des Browsers, um PHP mit dem OpenLiteSpeed-Webserver zu testen, Ersetzen Sie sever-ip-address
mit Ihrer aktuellen IP.
Sie sollten die PHP-Informationen Ihres Servers sehen. Dies bedeutet, dass PHP-Skripte ordnungsgemäß mit dem OpenLiteSpeed-Webserver ausgeführt werden können. Sie sind über die LiteSpeed API verbunden (LSAPI).
Herzlichen Glückwunsch! Sie haben OpenLiteSpeed, MariaDB und PHP erfolgreich auf Ubuntu 20.04/18.04 installiert. Sie können sehen, dass OpenLiteSpeed standardmäßig PHP7.3 verwendet. Um die PHP-Version zu ändern, müssen Sie das Admin-Panel verwenden.
Schritt 5:Konfigurieren Sie das Admin-Panel
Legen Sie einen Benutzernamen und ein Passwort für das Admin-Panel fest.
sudo /usr/local/lsws/admin/misc/admpass.sh
Dann können Sie unter https://server-ip-address:7080/login.php
auf das Admin-Panel zugreifen . Standardmäßig wird ein selbstsigniertes TLS-Zertifikat verwendet, daher müssen Sie Ihrem Webbrowser eine Sicherheitsausnahme hinzufügen.
- Klicken Sie in Firefox auf
Advanced
und klicken Sie auf „Accept the risk and Continue
„ - Klicken Sie in Google Chrome auf Weiter zu
your-server-ip(unsafe)
.
Wechsel zu PHP8.0 im Admin-Panel
Damit der standardmäßige virtuelle Host PHP8.0 verwendet, müssen wir zunächst PHP8.0 auf Serverebene aktivieren. Gehen Sie zu Server Configuration
-> External App
, und klicken Sie auf +
Schaltfläche, um eine neue externe App hinzuzufügen.
Wählen Sie LiteSpeed SAPI App
als Typ und klicken Sie auf Next
Schaltfläche.
Geben Sie die folgenden Informationen ein:
- Name :
lsphp8.0
- Adresse :
uds://tmp/lshttpd/lsphp80.sock
- Max. Verbindungen :
10
- Umwelt :PHP_LSAPI_CHILDREN=10
LSAPI_AVOID_FORK=200M - Zeitüberschreitung bei der ersten Anfrage (Sek.) :
60
- Retry Timeout (Sek.) :
0
- Ständige Verbindung :
Yes
- Antwortpufferung :
No
- Befehl :
lsphp80/bin/lsphp
- Rückstand :
100
- Instanzen :
1
- Priorität :
0
- Memory Soft Limit (Bytes) :2047M
- Feste Speichergrenze (Bytes) :2047M
- Prozess-Soft-Limit :1400
- Hard-Limit verarbeiten :1500
Speichern Sie die Einstellungen. Gehen Sie dann zu Virtual Hosts
-> Example
-> Script Handler
Registerkarte und klicken Sie auf +
Schaltfläche, um einen neuen Skript-Handler hinzuzufügen.
Geben Sie die folgenden Informationen ein:
- Suffixe :
php
- Handler-Typ :
LiteSpeed SAPI
- Handlername :
lsphp8.0
Speichern Sie die Einstellungen. Klicken Sie dann auf Graceful Restart Schaltfläche in der oberen linken Ecke, damit die Änderungen wirksam werden. Geben Sie nun server-ip-address/phpinfo.php
ein in der Adressleiste des Browsers, um PHP mit dem OpenLiteSpeed-Webserver zu testen. Sie sollten sehen, dass der standardmäßige virtuelle Host jetzt PHP8.0 verwendet.
Notizen
Nachdem ich OpenLiteSpeed eine Weile verwendet hatte, versuchte ich, nur zum Testen zurück zu Nginx zu wechseln. Es ist seltsam, dass einige der PHP-Module nicht mehr aktiviert sind. Es ist nicht klar, ob es an OpenLiteSpeed liegt. Ich musste /etc/php/7.4/cli/php.ini
bearbeiten und /etc/php/7.4/fpm/php.ini
um die fehlenden Module zu aktivieren, einschließlich mysqlnd
, mysqli
, mbstring
, gd
, json
usw.
Bei einer normalen Installation des LEMP-Stacks muss ich die php.ini
nicht bearbeiten Datei, um PHP-Module zu aktivieren, aber in dieser Situation musste ich diese Datei bearbeiten. Eine einfache Möglichkeit, alle erforderlichen Module zu aktivieren, besteht darin, die folgenden zwei Befehle auszuführen:
cat /etc/php/7.4/mods-available/* | sudo tee -a /etc/php/7.4/fpm/php.ini cat /etc/php/7.4/mods-available/* | sudo tee -a /etc/php/7.4/cli/php.ini
Schließen
Ich hoffe, dieses Tutorial hat Ihnen geholfen, den LOMP-Stack auf Ubuntu 20.04/18.04 LTS zu installieren . Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter, um weitere Tipps und Tricks zu erhalten. Pass auf dich auf 🙂