Tento tutoriál vám ukáže, jak nainstalovat LOMP stack (OpenLiteSpeed, MariaDB a PHP8.0) na Ubuntu 20.04/18.04. Softwarový zásobník je sada softwarových nástrojů spojených dohromady. LOMP je zkratka pro Linux, OpenLiteSpeed, MariaDB/MySQL a PHP, které mohou pohánět dynamické webové stránky a webové aplikace. Linux je operační systém; OpenLiteSpeed je webový server; MariaDB/MySQL je databázový server a PHP je skriptovací jazyk na straně serveru zodpovědný za generování dynamických webových stránek.
Proč je OpenLiteSpeed lepší než Apache/Nginx
Dříve jsme diskutovali o tom, jak nainstalovat zásobník LAMP (Apache) a zásobník LEMP (Nginx). Proč přecházíme na OpenLiteSpeed? Protože je mnohem výkonnější.
- 5x více požadavků za sekundu.
- LSAPI umožňuje lepší výkon PHP než mod_PHP a PHP-FPM.
- Extrémně nízké nároky na CPU a paměť.
- HTTP/3 . Protože se OpenLiteSpeed zaměřuje na rychlost, přijímá novou technologii rychleji než Nginx.
- Vestavěná funkce PageSpeed a ModSecurity modul. Pokud používáte Nginx, musíte tyto dva moduly znovu zkompilovat při každém upgradu Nginx.
- Vestavěná mezipaměť stránky integrace s oblíbenými webovými aplikacemi, jako jsou WordPress, Magento, Joomla, Prestashop, Opencart, Drupal, xenForo, Laravel, Shopware a MediaWiki.
- Anti-DDoS připojení a omezení šířky pásma.
- Vestavěná komprese Brotli pro statické soubory.
- Webový administrátorský panel.
Požadavky
Abyste mohli sledovat tento tutoriál, potřebujete operační systém Ubuntu 20.04/18.04 běžící na vzdáleném serveru.
Pokud hledáte vysoce výkonný VPS (virtuální soukromý server), můžete přejít na web ScalaHosting a vytvořit si účet. Vyberte plán Linux VPS s vlastní správou. Použijte kód kupónu linuxbabe2021
na platební stránce a ušetříte 100 $ pokud se rozhodnete platit 12 měsíců předem. Chcete-li správně nastavit svůj Linux VPS server na ScalaHosting, můžete se řídit níže uvedeným návodem.
- Jak vytvořit Linux VPS server na ScalaHosting
A pokud potřebujete nastavit zásobník LOMP s názvem domény, doporučuji zakoupit názvy domén od NameCheap, protože cena je nízká a poskytují ochranu soukromí whois doživotně zdarma.
Krok 1:Aktualizace softwarových balíčků
Než nainstalujeme zásobník LOMP, je vhodné aktualizovat úložiště a softwarové balíčky spuštěním následujícího příkazu na vašem operačním systému Ubuntu 20.04/18.04.
sudo apt update; sudo apt upgrade
Krok 2:Nainstalujte OpenLiteSpeed Web Server
OpenLiteSpeed není součástí výchozího úložiště softwaru Ubuntu, takže jej budeme muset nainstalovat z oficiálního úložiště upstream. Spusťte následující příkaz a přidejte úložiště OpenLiteSpeed do svého systému Ubuntu.
wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debian_repo.sh | sudo bash
Výše uvedený příkaz také importuje klíč OpenLiteSpeed GPG do systému Ubuntu, aby APT mohl ověřit integritu balíčku během instalace. Poté nainstalujte OpenLiteSpeed pomocí:
sudo apt install -y openlitespeed
Po instalaci můžeme povolit automatické spouštění OpenLiteSpeed při spouštění spuštěním následujícího příkazu.
sudo systemctl povolit lshttpd
Poté spusťte OpenLiteSpeed pomocí tohoto příkazu:
sudo systemctl start lshttpd
Nyní zkontrolujte jeho stav.
sudo systemctl status lshttpd
Ukázkový výstup:
● lshttpd.service – OpenLiteSpeed HTTP Server načten:načten (/etc/systemd/system/lshttpd.service; povoleno; předvolba dodavatele:povoleno) Aktivní:aktivní (běžící) od Po 2021-05-31 04:59:06 EDT; Před 14 minutami Hlavní PID:7213 (litespeed) CGroup:/system.slice/lshttpd.service ├─7213 openlitespeed (lshttpd - main) ├─7224 openlitespeed (lscgid) ├─7253—ls1—lshttpd -2speed #05 lshttpd - #02)May 31 04:59:04 focal systemd[1]:Spouštění OpenLiteSpeed HTTP Server...May 31 04:59:04 focal lswsctrl[7171]:[OK] litespeed:pid=7213.May 31 04 :59:06 focal systemd[1]:Spuštěn OpenLiteSpeed HTTP Server.
„Povoleno ” znamená, že je povoleno automatické spouštění při spouštění a vidíme, že OpenLiteSpeed běží. Pokud se výše uvedený příkaz po spuštění okamžitě neukončí. Musíte stisknout „q ” aby to skončilo.
Zkontrolujte verzi OpenLiteSpeed.
/usr/local/lsws/bin/openlitespeed -v
Výstup:
LiteSpeed/1.6.21 Verze otevřeného modulu:modgzip 1.1 mezipaměť 1.62 modinspector 1.1 uploadprogress 1.1 mod_security 1.4 (sestaveno:út. duben 6 13:20:57 UTC 2021) verze modulu:modgzip 12gresse 12.1 upload.1 modgzip 12.1 cache 1.1 /před>Ve výchozím nastavení OpenLiteSpeed naslouchá na portu 8088, potřebujeme, aby naslouchal na portu 80. Upravte hlavní konfigurační soubor pomocí textového editoru příkazového řádku, jako je Nano.
sudo nano /usr/local/lsws/conf/httpd_config.confNajděte následující řádky
Výchozí{ adresa posluchače *:8088 příklad bezpečné mapy 0 *}Změňte
8088
na80
.Výchozí adresa posluchače{ *:80 příklad bezpečné mapy 0 *}Uložte a zavřete soubor. Poté restartujte OpenLiteSpeed.
sudo systemctl restart lshttpdPoznámka :Pokud na serveru běží další webové servery, jako je Nginx, musíte jej zastavit a poté restartovat OpenLiteSpeed.
sudo systemctl stop nginxNyní zadejte veřejnou IP adresu vašeho serveru Ubuntu 20.04/18.04 do adresního řádku prohlížeče. Měli byste vidět webovou stránku „Gratulujeme“, což znamená, že webový server OpenLiteSpeed běží správně.
Pokud je připojení odmítnuto nebo se nepodaří dokončit, může to být brána firewall, která brání příchozím požadavkům na port TCP 80. Pokud používáte bránu firewall iptables, musíte pro otevření portu TCP 80 spustit následující příkaz.
sudo iptables -I INPUT -p tcp --dport 80 -j PŘIJÍMATPokud používáte UFW firewall, pak spusťte tento příkaz pro otevření TCP portu 80.
sudo ufw povolit httpVe výchozím nastavení běží webový server OpenLiteSpeed jako
nobody
uživatel anogroup
skupina. Výchozí kořenový adresář dokumentu je/usr/local/lsws/Example/html
.Krok 3:Nainstalujte databázový server MariaDB
MariaDB je drop-in náhrada za MySQL. Je vyvinut bývalými členy týmu MySQL, kteří se obávají, že by Oracle mohl změnit MySQL na uzavřený produkt. Chcete-li nainstalovat MariaDB na Ubuntu 20.04/18.04, zadejte následující příkaz.
sudo apt install mariadb-server mariadb-clientPo instalaci by se měl server MariaDB automaticky spustit. Použijte systemctl zkontrolovat jeho stav.
systemctl status mariadbVýstup:
● mariadb.service – databázový server MariaDB 10.3.29 Načteno:načteno (/lib/systemd/system/mariadb.service; povoleno; přednastaveno dodavatele:povoleno) Aktivní:aktivní (běží) od pá 2020-04-10 14:19:16 UTC; Před 18s Dokumenty:man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Hlavní PID:9161 (mysqld) Stav:„Teď se berou vaše požadavky SQL...“ Úkoly:31 (limit :9451) Paměť:64,7M CGroup:/system.slice/mariadb.service └─9161 /usr/sbin/mysqldPokud neběží, spusťte jej tímto příkazem:
sudo systemctl start mariadbChcete-li povolit automatické spouštění MariaDB při spouštění, spusťte
sudo systemctl povolit mariadbNyní spusťte bezpečnostní skript po instalaci.
sudo mysql_secure_installationAž budete požádáni o zadání rootovského hesla MariaDB, stiskněte klávesu Enter, protože heslo root ještě není nastaveno. Poté zadejte y pro nastavení hesla uživatele root pro server MariaDB.
Dále můžete stisknout Enter pro zodpovězení všech zbývajících otázek, což odstraní anonymního uživatele, zakáže vzdálené přihlášení root a odstraní testovací databázi. Tento krok je základním požadavkem pro zabezpečení databáze MariaDB. (Všimněte si, že Y je velké, což znamená, že se jedná o výchozí odpověď. )
Ve výchozím nastavení používá balíček MaraiDB na Ubuntu
unix_socket
k ověření přihlášení uživatele, což v podstatě znamená, že můžete použít uživatelské jméno a heslo operačního systému pro přihlášení do konzoly MariaDB. Můžete tedy spustit následující příkaz a přihlásit se bez zadání hesla root MariaDB.sudo mariadb -u rootChcete-li ukončit, spusťte
exit;Zkontrolujte informace o verzi serveru MariaDB.
mariadb --versionJak můžete vidět, nainstalovali jsme MariaDB 10.3.29.
mariadb Ver 15.1 Distrib 10.3.29-MariaDB, pro debian-linux-gnu (x86_64) pomocí readline 5.2Krok 4:Nainstalujte PHP8.0
Když nainstalujeme OpenLiteSpeed, automaticky se nainstaluje
lsphp73
balíček, což je sestavení PHP 7.3 vytvořené pro OpenLiteSpeed. PHP8.0 můžeme nainstalovat pomocí následujícího příkazu.sudo apt install lsphp80 lsphp80-mysql lsphp80-common lsphp80-opcache lsphp80-curlZkontrolujte číslo verze.
/usr/local/lsws/lsphp80/bin/php8.0 -vUkázkový výstup:
PHP 8.0.6 (cli) (vytvořeno:7. května 2021 15:17:48) ( NTS )Autorská práva (c) The PHP GroupZend Engine v4.0.6, Copyright (c) Zend Technologies with Zend OPcache v8.0.6, Copyright (c), Zend TechnologiesPřestože jsme nainstalovali pouze 5 balíčků PHP8.0, sestavení OpenLiteSpeed PHP se dodává s mnoha moduly PHP. Povolené moduly PHP můžete zkontrolovat pomocí následujícího příkazu.
/usr/local/lsws/lsphp80/bin/php8.0 --modulesKrok 5:Otestujte PHP
Je tam
phpinfo.php
soubor pod/usr/local/lsws/Example/html
adresář, takže můžete zadatserver-ip-address/phpinfo.php
v adresním řádku prohlížeče otestujte PHP s webovým serverem OpenLiteSpeed, nahraďtesever-ip-address
s vaší skutečnou IP.Měli byste vidět informace o PHP serveru. To znamená, že skripty PHP mohou správně běžet s webovým serverem OpenLiteSpeed. Jsou připojeny přes LiteSpeed API (LSAPI).
Gratuluji! Úspěšně jste nainstalovali OpenLiteSpeed, MariaDB a PHP na Ubuntu 20.04/18.04. Můžete vidět, že OpenLiteSpeed používá standardně PHP7.3. Chcete-li změnit verzi PHP, musíte použít panel správce.
Krok 5:Nakonfigurujte panel správce
Nastavte uživatelské jméno a heslo pro administrátorský panel.
sudo /usr/local/lsws/admin/misc/admpass.sh
Poté můžete přistupovat k panelu správce na adrese
https://server-ip-address:7080/login.php
. Ve výchozím nastavení používá certifikát TLS s vlastním podpisem, takže musíte do webového prohlížeče přidat výjimku zabezpečení.
- Ve Firefoxu klikněte na
Advanced
a klikněte na „Accept the risk and Continue
“ - V prohlížeči Google Chrome klikněte na Pokračovat na
your-server-ip(unsafe)
.
Přechod na PHP8.0 v panelu administrátora
Aby výchozí virtuální hostitel používal PHP8.0, musíme nejprve povolit PHP8.0 na úrovni serveru. Přejděte na Server Configuration
-> External App
a klikněte na +
tlačítko pro přidání nové externí aplikace.
Vyberte LiteSpeed SAPI App
jako typ a klikněte na Next
tlačítko.
Zadejte následující informace:
- Jméno :
lsphp8.0
- Adresa :
uds://tmp/lshttpd/lsphp80.sock
- Maximální počet připojení :
10
- Životní prostředí :PHP_LSAPI_CHILDREN=10
LSAPI_AVOID_FORK=200 mil. - Časový limit počátečního požadavku (s) :
60
- Časový limit opakování (s) :
0
- Trvalé připojení :
Yes
- Ukládání do vyrovnávací paměti :
No
- Příkaz :
lsphp80/bin/lsphp
- Nevyřízené :
100
- Instance :
1
- Priorita :
0
- Měkký limit paměti (bajty) :2047 mil.
- Pevný limit paměti (bajty) :2047 mil.
- Zpracovat měkký limit :1400
- Zpracovat pevný limit :1500
Uložte nastavení. Poté přejděte na Virtual Hosts
-> Example
-> Script Handler
a klikněte na +
tlačítko pro přidání nového obslužného programu skriptu.
Zadejte následující informace:
- Přípony :
php
- Typ obslužného nástroje :
LiteSpeed SAPI
- Jméno obslužného nástroje :
lsphp8.0
Uložte nastavení. Poté klikněte naGraceful Restart tlačítko v levém horním rohu, aby se změny projevily. Nyní zadejte server-ip-address/phpinfo.php
v adresním řádku prohlížeče otestujte PHP s webovým serverem OpenLiteSpeed. Měli byste vidět, že výchozí virtuální hostitel nyní používá PHP8.0.
Poznámky
Po chvíli používání OpenLiteSpeed jsem zkusil přejít zpět na Nginx jen pro testování. Je zvláštní, že některé moduly PHP již nejsou povoleny. Není jasné, zda je to kvůli OpenLiteSpeed. Musel jsem upravit /etc/php/7.4/cli/php.ini
a /etc/php/7.4/fpm/php.ini
k povolení chybějících modulů, včetně mysqlnd
, mysqli
, mbstring
, gd
, json
, atd.
Při běžné instalaci zásobníku LEMP nemusím upravovat php.ini
soubor pro povolení modulů PHP, ale v této situaci jsem musel tento soubor upravit. Snadný způsob, jak povolit všechny potřebné moduly, je spustit následující dva příkazy:
cat /etc/php/7.4/mods-available/* | sudo tee -a /etc/php/7.4/fpm/php.inicat /etc/php/7.4/mods-available/* | sudo tee -a /etc/php/7.4/cli/php.ini
Zavírání
Doufám, že vám tento tutoriál pomohl nainstalovat zásobník LOMP na Ubuntu 20.04/18.04 LTS . Jako vždy, pokud vám tento příspěvek přišel užitečný, přihlaste se k odběru našeho bezplatného zpravodaje, kde získáte další tipy a triky. Opatruj se 🙂