V tomto tutoriálu si ukážeme, jak nainstalovat a nasadit Lighttpd na Debian 9 VPS s podporou FPM/FastCGI.
Lighttpd je bezplatný, open-source a vysoce výkonný webový server vyvinutý Janem Kneschkem. Má nízkou paměťovou náročnost ve srovnání s jinými webovými servery a je speciálně navržen pro prostředí s kritickou rychlostí. Je bezpečný, rychlý a dokáže zpracovat až 10 000 připojení paralelně na jednom serveru. Používá jej mnoho webových stránek, včetně YouTube, Bloglines, WikiMedia a mnoha dalších. Lighttpd přichází s bohatou sadou funkcí, jako je FastCGI, SCGI, Auth, URL-Rewriting, Output-Compression, mechanismus událostí a další. Tyto funkce společně vytvářejí přesvědčivé a vysoce výkonné řešení webového serveru.
Začněme s instalací.
Předpoklady
- Pro účely tohoto tutoriálu použijeme Debian 9 VPS.
- Je také vyžadován úplný root přístup SSH nebo uživatel s právy sudo.
- Platný název domény ukazuje IP adresa vašeho serveru. V tomto tutoriálu budeme používat
test.example.com
.
Krok 1:Přihlaste se přes SSH a aktualizujte systém
Nejprve se budeme muset přihlásit na náš server pomocí SSH. Můžete to udělat zadáním tohoto příkazu:
ssh root@IP_Address -p Port_Number
Pokud nepoužíváte uživatele root, nezapomeňte nahradit „root“ svým uživatelským jménem. Změňte „IP_Address“ a „Port_Number“ podle IP adresy vašeho serveru a čísla portu SSH.
Jakmile se přihlásíte, měli byste aktualizovat všechny své balíčky na nejnovější dostupné verze.
apt-get update -y apt-get upgrade -y
Po dokončení aktualizací můžeme přejít k dalšímu kroku.
Krok 2:Instalace serveru MariaDB
Nejprve nainstalujeme databázový server MariaDB spuštěním následujícího příkazu:
apt-get install mariadb-server mariadb-client
Po dokončení instalace spusťte službu MariaDB a povolte její spuštění po restartu systému:
systemctl start mariadb systemctl enable mariadb
Dále se přihlaste do prostředí MariaDB pomocí následujícího příkazu:
mysql
Pokud je vše v pořádku, měli byste vidět následující výstup:
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 4 Server version: 10.1.38-MariaDB-0+deb9u1 Debian 9.8 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Dále zabezpečte instalaci MariaDB pomocí mysql_secure_installation
skript. Tento skript odstraní anonymní uživatele, zakáže vzdálené přihlášení root a odstraní testovací databázi.
mysql_secure_installation
Odpovězte na všechny otázky, jak je uvedeno níže:
Enter current password for root (enter for none): press [Enter] Set root password? [Y/n]: N 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
Jakmile je MariaDB zabezpečena, můžete přejít k dalšímu kroku.
Krok 3:Nainstalujte Lighttpd
Ve výchozím nastavení je nejnovější verze Lighttpd dostupná ve výchozím úložišti Debianu 9. Můžete jej nainstalovat pouhým spuštěním následujícího příkazu:
apt-get install lighttpd
Po instalaci spusťte službu Lighttpd a povolte její spuštění po restartu systému pomocí následujícího příkazu:
systemctl start lighttpd systemctl enable lighttpd
Stav Lighttpd můžete ověřit pomocí následujícího příkazu:
systemctl status lighttpd
Pokud je vše v pořádku, měli byste získat následující výstup:
● lighttpd.service - Lighttpd Daemon Loaded: loaded (/lib/systemd/system/lighttpd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-08-12 14:48:35 UTC; 29s ago Main PID: 2354 (lighttpd) CGroup: /system.slice/lighttpd.service └─2354 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf Aug 12 14:48:35 debian9 systemd[1]: Starting Lighttpd Daemon... Aug 12 14:48:35 debian9 systemd[1]: Started Lighttpd Daemon.
Nyní otevřete webový prohlížeč a navštivte následující adresu URL http://test.example.com
. Měli byste získat výchozí stránku Lighttpd, jak je uvedeno níže:
Výchozí kořen dokumentu Lighttpd je /var/ww/html
na Debianu 9 je hlavní konfigurační soubor/etc/lighttpd/lighttpd.conf
a další konfigurační soubory jsou umístěny v /etc/lighttpd/conf-available
adresář.
Krok 4:Nainstalujte PHP a PHP-FPM
Dále nainstalujeme PHP a PHP-FPM a umožníme jim pracovat s Lighttpd. PHP můžete nainstalovat spolu se všemi jeho nezbytnými rozšířeními pomocí následujícího příkazu:
apt-get install php php-cli php-common php-fpm php-mysql
Po instalaci musíme upravit soubor php.ini, abychom povolili podporu PHP pro Lighttpd.
nano /etc/php/7.0/fpm/php.ini
Změňte hodnotu cgi.fix_pathinfo na 1:
cgi.fix_pathinfo=1
Uložte a zavřete soubor.
Ve výchozím nastavení PHP-FPM naslouchá na UNIXovém soketu /var/run/php7-fpm.sock
. Budeme tedy muset upravit soubor /etc/php/7.0/fpm/pool.d/www.conf
a nastavte PHP-FPM tak, aby naslouchalo na TCP socketu.
nano /etc/php/7.0/fpm/pool.d/www.conf
Najděte řádek:
listen = /run/php/php7.0-fpm.sock
Nahraďte jej následujícím řádkem:
listen = 127.0.0.1:9000
Uložte a zavřete soubor. Dále otevřete soubor 15-fastcg-php.conf
pro povolení podpory FastCGI v Lighttpd:
nano /etc/lighttpd/conf-available/15-fastcgi-php.conf
Najděte následující řádky:
"bin-path" => "/usr/bin/php-cgi", "socket" => "/var/run/lighttpd/php.socket",
Nahraďte je následujícím:
"host" => "127.0.0.1", "port" => "9000",
Uložte a zavřete soubor. Poté povolte moduly FastCGI a FastCGI-PHP pomocí následujícího příkazu:
lighty-enable-mod fastcgi lighty-enable-mod fastcgi-php
Nakonec restartujte službu Lighttpd a PHP-FPM, abyste použili všechny změny konfigurace:
systemctl restart php7.0-fpm systemctl restart lighttpd
PHP-FPM můžete ověřit pomocí následujícího příkazu:
systemctl status php7.0-fpm
Pokud je vše v pořádku, měli byste získat následující výstup:
● php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-08-12 14:55:36 UTC; 1min 56s ago Docs: man:php-fpm7.0(8) Main PID: 12288 (php-fpm7.0) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec" Tasks: 3 (limit: 7372) CGroup: /system.slice/php7.0-fpm.service ├─12288 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf) ├─12289 php-fpm: pool www └─12290 php-fpm: pool www Aug 12 14:55:36 debian9 systemd[1]: Stopped The PHP 7.0 FastCGI Process Manager. Aug 12 14:55:36 debian9 systemd[1]: Starting The PHP 7.0 FastCGI Process Manager... Aug 12 14:55:36 debian9 systemd[1]: Started The PHP 7.0 FastCGI Process Manager.
Krok 5:Otestujte podporu PHP-FPM na Lighttpd
Lighttpd je nyní nainstalován a nakonfigurován pro práci s FPM/FastCGI. Dále budeme muset vytvořit konfigurační soubor virtuálního hostitele pro Lighttpd, abychom otestovali podporu PHP-FPM.
Nejprve vytvořte virtuální hostitelský adresář pomocí následujícího příkazu:
mkdir /var/www/html/testsite
Dále vytvořte konfigurační soubor virtuálního hostitele pomocí následujícího příkazu:
nano /etc/lighttpd/conf-available/lighttpd.conf
Přidejte následující řádky:
$HTTP["host"] =="test.example.com" { server.document-root = "/var/www/html/testsite" index-file.names = ( "info.php" ) }
Uložte a zavřete soubor. Poté povolte virtuálního hostitele pomocí následujícího příkazu:
ln -s /etc/lighttpd/conf-available/lighttpd.conf /etc/lighttpd/conf-enabled/
Dále vytvořte soubor info.php v adresáři /var/www/html/testsite pro testování podpory PHP-FPM:
nano /var/www/html/testsite/info.php
Přidejte následující řádky:
<?php phpinfo(); ?>
Dále nastavte správné oprávnění na /var/www/html/testsite
pomocí následujícího příkazu:
chown -R www-data:www-data /var/www/html/testsite
Nakonec restartujte službu Lighttpd pomocí následujícího příkazu:
systemctl restart lighttpd
Nyní otevřete webový prohlížeč a zadejte adresu URL http://test.example.com
. Na následující stránce byste měli vidět, že PHP pracuje přes FPM/FastCGI:
V tomto tutoriálu jsme se naučili, jak nainstalovat Lighttpd na Debian 9 VPS. Také jsme se naučili, jak povolit MariaDB, PHP a PHP-FPM s FastCGI v Lighttpd. Pro více informací můžete navštívit oficiální dokumentaci Lighttpd.
Samozřejmě nemusíte instalovat Lighttpd na Debian 9 VPS, pokud používáte jedno z našich řešení Managed Debian Hosting, v takovém případě můžete jednoduše požádat naše zkušené administrátory Linuxu, aby vám nastavili Lighttpd na Debian 9 VPS. Jsou k dispozici 24×7 a okamžitě se postarají o váš požadavek.
PS . Pokud se vám líbil tento příspěvek o jak nainstalovat Lighttpd na Debian 9 VPS , sdílejte jej prosím se svými přáteli na sociálních sítích pomocí níže uvedených zkratek pro sdílení nebo jednoduše zanechte komentář v sekci komentářů. Děkuji.