Vyhledávání na webu

Jak nainstalovat a nakonfigurovat LEMP na Debian 8 (Jessie)


Jedním z nejčastějších důvodů pro nastavení systému Linux je hostování webových stránek. Podle průzkumu NetCraft.com z února 2016 mezi 1 milionem nejrušnějších webových stránek na světě, zhruba 15,60 % z nich běží na Nginx.

Spárováno s vysokou pravděpodobností, že je poskytován určitý druh dynamického obsahu a také určitý druh databázového back-endu pro webové stránky, možnost administrátora nastavit servery LEMP je velmi prospěšný pro uchazeče o zaměstnání a zaměstnavatele a-jako!

Tento tutoriál vás seznámí se základy instalace a konfigurace linuxového serveru (konkrétně Debian 8 Jessie), aby fungoval jako LEMP server.

Co je LEMP Server?

Skvělá otázka! Jako u většiny věcí ve světě počítačů LEMP je zkratka pro Linux, Nginx, MySQL a PHP.

Tato zkratka se běžně používá k odkazování na kolekce softwaru na webovém serveru. Tento tutoriál nejprve provede nastavení LEMP, konkrétně MySQL a PHP.

Před rozdělením na konfigurační aspekty systémů je důležité vědět o Nginx.

Co je Nginx?

Nginx začal svůj život v roce 2002, kdy si počítačový svět začal uvědomovat, že webové stránky s deseti tisíci nebo více souběžnými připojeními jsou velmi reálnou možností, a v důsledku toho byl Nginx vytvořen od nuly, aby tento problém řešil.

Instalace a konfigurace MySQL a PHP

1. Tato první část se bude zabývat Debianem jako MySQL a PHP serverem. Linuxová část serveru LEMP by již měla být provedena instalací Debianu! Pokud však budete potřebovat průvodce, jak nainstalovat Debian, přečtěte si prosím následující článek na TecMint:

  1. Instalace Debianu 8 Jessie

Jakmile je Debian připraven jít, proces instalace zbytku potřebného softwaru lze dokončit jedním rychlým příkazem pomocí metabalíčku „apt“.

apt-get install mysql-server-5.5 php5-mysql php5

V závislosti na systémovém hardwaru a připojení k internetu může tento proces nějakou dobu trvat. V době psaní tohoto článku vyžadovala čerstvá instalace Debian Jessie se všemi aplikovanými aktualizacemi asi 70 MB archivů z repozitářů (není to tak špatné vzhledem k tomu, co bude server dělat, až budou věci hotové)! Během procesu instalace může systém uživatele vyzvat k nastavení hesla uživatele root SQL. Toto je jiné než skutečné heslo uživatele root a z bezpečnostních důvodů by mělo pravděpodobně zůstat jiné.

2. Jakmile apt dokončí instalaci veškerého softwaru, základní služby budou spuštěny. Zastavení zde by však znamenalo velmi krátký tutoriál! Pojďme se tedy ponořit trochu více do konfigurace každého nainstalovaného softwaru počínaje MySQL.

3. Po instalaci MySQL se často doporučuje, aby SQL server provedl základní údržbu výchozí instalace. To lze snadno provést pomocí nástroje mysql_secure_installation.

Tento příkaz se jednoduše spustí z příkazového řádku a vyzve uživatele k odstranění věcí, jako jsou anonymní uživatelé, testování databází a odebrání možnosti vzdáleného přihlášení uživatele root k databázi SQL.

mysql_secure_installation

Tento příkaz spustí interaktivní výzvu, která bude klást otázky týkající se výše uvedených témat. Protože apt již byl vyzván k zadání hesla root MySQL, bude nutné toto heslo zadat, aby bylo možné provést jakékoli změny. Protože heslo uživatele root již bylo nastaveno, může být odpovědí na výzvu ke změně hesla uživatele root na serveru MySQL Ne.

4. Další sada otázek se bude týkat anonymních uživatelů, „testovací databáze a vzdáleného přístupu root k databázi. Obvykle je bezpečné odpovědět Ano na všechny tyto výzvy, pokud neexistuje konkrétní důvod, proč by nastavení potřebovalo jednu z těchto možností ponechat nedotčenou.

POZNÁMKA: Může nastat chyba o selhání smazání databáze s názvem 'test', s tím si nedělejte starosti, protože databáze může nebo nemusí existovat a bez ohledu na to bude skript pokračovat v tom, co je potřeba.

V tuto chvíli je MySQL připraveno k použití. Bez znalosti, jaké databáze nebo uživatelé budou potřeba, je obtížné provést mnohem více konfigurace. Většina webových stránek však často automaticky vytvoří potřebné databáze a uživatele při instalaci softwaru. To je však velmi závislé na softwaru a vyžadovalo by to rychlý pohled na soubory README nebo pokyny k instalaci softwaru.

5. Nyní, když je MySQL nakonfigurováno, pojďme vpřed a nastavíme některá základní nastavení PHP pro tento konkrétní server. I když existuje spousta nastavení, se kterými lze pro PHP manipulovat, existuje pouze několik základních, které by se měly téměř vždy upravit. Konfigurační soubor php se nachází na adrese /etc/php5/fpm/php.ini. Otevřete tento soubor pomocí libovolného textového editoru.

nano /etc/php5/fpm/php.ini

Pomocí vyhledávacích schopností nano ctrl+w vyhledejte řetězec „memory_limit “ (vynechejte uvozovky). Při výchozí instalaci bude tento řádek již nastaven na 128M, ale pokud by aplikace potřebovala více, lze tento řádek změnit, aby vyhovoval požadavkům.

Další důležitou možností ke kontrole je „max_execution_time“ a ve výchozím nastavení bude opět nastaveno na 30. Pokud aplikace vyžaduje více, lze tuto možnost změnit. Někteří lidé dávají přednost také nastavení protokolování php do speciálního souboru/adresáře. Pokud by to byl požadavek, vyhledejte řetězec „error_log = “ a poté odkomentujte řádek odstraněním středníku, který je zde obvykle ve výchozím nastavení.

V tomto okamžiku lze na konec řádku přidat hodnotu pro soubor protokolu. Ujistěte se, že cesta v systému existuje. Po dokončení nezbytných změn v souboru php.ini uložte změny a ukončete textový editor. V tuto chvíli jsou MySQL a PHP5 připraveny začít hostovat weby. Nyní je čas nakonfigurovat Nginx.

Instalace a konfigurace Nginx

6. Nginx (engine X) je alternativní a velmi výkonný webový server. Tato část tohoto tutoriálu vás provede nastavením webové stránky, kterou má Nginx hostovat. Prvním krokem ke konfiguraci Nginx je instalace potřebných balíčků pomocí nástroje „apt“.

apt-get install nginx

Za předpokladu, že jsou splněny všechny závislosti, navigace na IP adresu serveru ve webovém prohlížeči by měla poskytnout výchozí web Nginx.

POZNÁMKA: Existují případy, kdy se po instalaci Nginx server nespustí automaticky. Pokud navigace na IP adresu serveru ve webovém prohlížeči nezobrazí stránku níže, zadejte následující příkaz, abyste zajistili spuštění Nginx.

service nginx start

Nginx nyní úspěšně hostí výchozí stránku. Zatímco výchozí stránka Debianu je honosná webová stránka, většina uživatelů bude chtít hostit něco vlastního.

7. Další kroky provedou nastavení Nginx pro hostování jiného webu. Nginx, podobně jako Apache 2, má svůj vlastní konfigurační adresář umístěný na /etc/nginx. Přepněte se do tohoto adresáře pomocí nástroje cd.

cd /etc/nginx

Pro tento tutoriál existuje několik důležitých souborů a adresářů pro nastavení webu pomocí Nginx. První dva adresáře, které jsou důležité, jsou adresáře „sites-available“ a „sites-enabled“. Podobně jako Apache 2, Nginx používá konfigurační soubory pro každý web v adresáři sites-available, které, když jsou aktivní, jsou symbolicky propojeny v adresáři sites-enabled.

První věc, kterou je potřeba zbavit se výchozího webu, je odstranit symbolický odkaz na webech s povoleným přístupem.

rm sites-enabled/default

8. Nyní je potřeba vytvořit a propojit nový konfigurační soubor webu, aby Nginx mohl stránku obsluhovat. Vytvoření konfiguračního souboru lokality lze zjednodušit zkopírováním a úpravou výchozí konfigurace lokality.

cp sites-available/default sites-available/tecmint-test

Tím se vytvoří nový konfigurační soubor webu, se kterým budete pracovat. Otevřete tento soubor v textovém editoru a změňte cestu, kterou bude Nginx obsluhovat soubory.

nano sites-available tecmint-test

V tomto souboru je několik důležitých možností, které lze změnit, aby Nginx obsluhoval web. První je řádek, který začíná „root“, protože tento řádek definuje, kde má Nginx poskytovat soubory pro tento konkrétní web.

Tento tutoriál jej ponechá jako výchozí „/var/www/html“ a jednoduše umístí html soubory, které se mají obsluhovat, do tohoto adresáře. Pokud však na tomto serveru má být více webů nebo vlastní konfigurace, nezapomeňte tuto cestu upravit.

Dalším důležitým řádkem je řádek „index“. Vzhledem k tomu, že tento článek je o instalaci LEMP a stránka by mohla potenciálně poskytovat stránky php, Nginx musí být informován, že výchozí stránkou může být stránka php. Chcete-li to provést, jednoduše přidejte „index.php“ na konec seznamu indexů souborů.

Než povolíte nový web, musí tam být něco, co bude Nginx sloužit. Výchozí stránka indexu již existuje, ale abychom si ověřili, že jiný web funguje, nahradíme obsah výchozí stránky něčím jiným.

echo “It's ALIVE!” > /var/www/html/index.html

9. Dalším krokem je povolení nového webu propojením právě vytvořeného konfiguračního souboru s adresářem sites-enabled. To lze snadno provést pomocí příkazu ln a poté znovu načíst konfiguraci Nginx pomocí obslužného programu.

ln -s /etc/nginx/sites-available/tecmint-test sites-enabled/tecmint-test
service nginx reload

V tuto chvíli by měl Nginx obsluhovat novou „jednoduchou“ webovou stránku. To lze potvrdit přechodem na IP adresu serveru prostřednictvím webového prohlížeče!

Tento článek měl být opět velmi jednoduchými konfiguracemi LEMP. Většina webů by vyžadovala další konfiguraci všech zúčastněných částí, ale možnosti konfigurace se mohou pohybovat v tisících! Hodně štěstí při jakémkoli nastavení hostování webových stránek.