2. diel - Inštalácia Laravel a sprevádzkovanie projektu
V minulej lekcii, Úvod do Laravel frameworku pre PHP , sme sa uviedli do PHP frameworku Laravel a stručne sme si povedali, aké znalosti budeme potrebovať pre prácu s ním. V dnešnom PHP tutoriálu sa pozrieme ako ho nainštalovať ako základ našej aplikácie. Túto inštaláciu vykonáme pomocou nástroja Composer a príkazového riadku.
Potrebný softvér
Ako prvý si pripravíme správny softvér, ktorý budeme potrebovať.
Webový server
Budem predpokladať, že máte nainštalovaný a sprevádzkovaný webový server Apache + PHP + MySQL. Ak nie, odporúčam pre začiatočníkov nainštalovať balík XAMPP.
Pre aktuálne Laravel budete potrebovať PHP 7.2.0 alebo novší.
Následne by som odporučil nejaké pokročilejšie IDE pre vývoj a prácu s frameworkom. Najlepšou voľbou je PhpStorm, ktorý ja sám používam a budem ho aj používať v tomto kurze. Uľahčí prácu nielen so samotným vývojom, ale tiež s ostatnými úkony ako napr. S Git systémom. Ako free alternatívu možno použiť aj NetBeans, ktorý dokáže taktiež pomôcť s vývojom na rozdiel od jednoduchších editorov. Ak to však myslíme s vývojom vážne, mali by sme siahnuť po profesionálnejším softvéru.
Ďalej pre samotnú inštaláciu použijeme snáď všeobecne najrozšírenejší spôsob inštalácie v PHP a to nástroj Composer. Laravel na ňom stavia ako samotnú inštaláciu, tak i ďalšie rozšírenie. Teda je potrebné ho tiež stiahnuť a nainštalovať alebo to celé nechať na PhpStorm, ktorý má aj zabudované prostriedky priamo pre prácu s týmto nástrojom. Ak ste ho nikdy nepoužívali, nainštalujte ho pomocou miestneho článku Composer.
Tiež sa prosím uistite, že máte nainštalovaná nasledujúce rozšírenie pre PHP:
- OpenSSL
- PDO
- mbstring
- Tokenizer
- XML
- Cdruh
- JSON
- bcmath
Ak ste použili odkaz vyššie pre inštaláciu XAMPP, tieto rozšírenia sú
už automaticky zahrnuté. Pre zistenie, či ak sú tieto rozšírenia
nainštalovaná a aktivovaná, možno len zavolať jednoduchou PHP funkciu
phpinfo()
a prejsť si tabuľku, ktorú vypisuje.
Ako môžete vidieť na obrázku, už teraz vieme, že bcmath máme
aktivované.
Vytvorenie nového projektu
Začneme vytvorením nového projektu v Laravel frameworku.
Inštalácia
Inštalovať budeme cez Composer a to buď ručne alebo cez PhpStorm, ak toto IDE používate. Aký spôsob zvolíte záleží na vás.
Inštalácia ručne pomocou Composer
Composer je nástroj tretích strán pre inštaláciu a správu závislostí projektov v PHP všeobecne. Stiahne nám základ Laravel aplikácie a aj všetky ďalšie potrebné knižnice. Ak teda Composer už máte nainštalovaný a pripravený, môžeme si vytvoriť nový Laravel projekt, kedy nám aj inštalátor skontroluje všetky potrebné závislosti. Ak nejaké chýba, samy sa doinštaluje (to môže chvíľu trvať).
Pre projekt si vytvorme nejakú zložku, napr.
first-application
, a následne pomocou príkazového riadka
spustíme príkaz pre vytvorenie štruktúry aplikácie:
composer create-project --prefer-dist laravel/laravel first-application
Inštalácia pomocou PhpStorm
Ak ste sa rozhodli pracovať v PhpStorm a máte všetko nainštalované, zostáva už len vytvorenie samotného projektu. To vykonáme podobne ako v každom inom IDE, kliknutím na tlačidlo pre vytvorenie nového projektu.
V novo otvorenom okne sa zobrazí sprievodca a my vyberieme ako typ projektu Composer Project. V ďalších krokoch:
- Vyplníme názov projektu, napr.
first-application
, spoločne s cestou, kam sa má uložiť. - Ďalej nastavíme, že chceme stiahnuť Composer, a vyberieme PHP interpret.
- V neposlednom rade zvolíme, čo budeme pomocou Composer vlastne
inštalovať. V našom prípade to teda bude Laravel framework a to konkrétne
balík
laravel/laravel
. Ten obsahuje základnú kostru aplikácie spoločne s už předpřipravenými komponentmi, ktoré sa najčastejšie používajú, ako napr. Databázová tabuľka užívateľov.
Ak pracujete s PhpStorm IDE prvýkrát na operačnom systéme
Windows, je možné, že inštalácia vás ďalej nepustí kvôli chýbajúcemu
PHP interpretovi. Ten je možné jednoducho nastaviť otvorením tably vedľa
rozbaľovacej ponuky pre vybranie daného interpreta a následne pridaním
súboru php.exe
cez rozbaľovaciu ponuku ikonky plus vľavo hore.
Potom podokno stačí zavrieť a zvoliť pridaný PHP interpret v rozbaľovacej
ponuke. Tento proces je popísaný nasledujúcim GIF obrázkom:
Týmto vytvoríme prvý projekt postavený na Laravel frameworku v rámci PhpStorm IDE pomocou nástroja Composer.
Proces inštalácie môže zabrať pár minút. Buďte preto trpezliví.
Spustenie projektu
Keď už máme projekt vytvorený is nainštalovaným Laravel frameworkom, je načase ho spustiť v rámci nášho webového servera a pozrieť sa na výsledok. U spustenie máme na výber z niekoľkých možností.
Možnosť 1: Spustenie pomocou vstavaného servera
Najjednoduchšie možnosť, ako Laravel projekt spustiť, nevyžaduje žiadnu ďalšiu konfiguráciu. Projekt spustíme pomocou vstavaného webového servera v PHP. Stačí zavolať nasledujúci príkaz v priečinku projektu vždy, keď budeme chcieť pracovať na našej aplikácií:
php artisan serve
Môže sa stať, že váš antivírus (najmä Avast), bude
chcieť po načítaní stránky súbor server.php
presunúť do
"vírusovej truhly". Ak sa tak stane, obnovte ho a zároveň nezabudnite pridať
výnimku pre tento súbor aj pre zložku s projektom.
Možnosť 2: Spustenie pomocou Laravel Homestead
Laravel ponúka oficiálne balíček Laravel Homestead využívajúce prostredie Vagrant. Laravel Homestead beží nezávisle vo virtuálnom stroji, čo môže byť pre niektoré mínusom, pretože je potreba väčšej operačná pamäť a mať vôbec podporu pre virtuálne prostredie. Na druhú stranu sa nemusíte o nič starať a akonáhle ho raz nainštalujete, konfigurácia a pridávanie nových projektov už bude hračkou.
Bohužiaľ vysvetľovanie inštalácie tohto prostredia a jeho konfigurácia je nad rámec tohto kurzu. O Laravel Homestead si môžete prečítať v oficiálnej dokumentácii, kde sú inštalácie a konfigurácie podrobne popísaný.
Možnosť 3: Spustenie pomocou Apache servera
Je jasné, že pre spustenie projektu pod Apache serverom je potreba, aby server bežal a aby zložka projektu bola umiestnená niekde, kam má Apache prístup. Čo už tak jasné nie je, je, že pred samotným spustením budeme musieť nastaviť ešte pár presmerovanie.
Smerovanie
Najprv si treba uvedomiť, že adresárová štruktúra projektu je stavaná
tak, že jeho zobrazenie prebieha až po vstupe do zložky public/
,
kde sa nachádza súbor index.php
. Túto zložku budeme tiež
nastavovať ako koreňovú zložku v Apache. Ako bonus si aj nastavíme URL
adresu first-application.local
ako prístupovú adresu pre náš
projekt.
Najprv je potrebné upraviť súbor
C:/xampp/apache/conf/extra/httpd-vhosts.conf
pre Windows
(záleží, kam ste XAMPP nainštalovali) alebo
/etc/apache2/sites-available/000-default.conf
pre Linux. Do súboru
pridáme nasledujúci kód:
<VirtualHost *:80> DocumentRoot "cesta/k/projektu/public" ServerName first-application.local <Directory /> AllowOverride none Require all granted DirectoryIndex index.php </Directory> </VirtualHost>
Následne tiež musíme s administrátorskými právami
upraviť súbor hosts
, ktorý nájdeme v
C:/Windows/System32/drivers/etc/hosts
pre Windows alebo v
/etc/hosts
pre Linux. Svoj textový editor teda musíte najprv
spustiť ako administrátor, aby bolo možné súbor uložiť. Potom do neho len
pridáme nasledujúci riadok:
127.0.0.1 first-application.local
Teraz už stačí len uložiť a reštartovať Apache (buď cez kontrolný
panel XAMPP, alebo cez príkaz sudo service apache2 restart
v
linuxovom terminálu).
Výsledok
Či už ste sa rozhodli pre ktorúkoľvek metódu spustenie projektu,
dostávame sa k dnešnému výsledku. Po zadaní príslušnej URL adresy do
webového prehliadača sa vám zobrazí podobné okno, ako vidíte nižšie na
obrázku. Pre vstavaný server bude URL adresa
http://127.0.0.1:8000/
a pre Apache alebo Laravel Homestead
http://first-application.local
:
Pokiaľ toto okno vidíte, potom ste všetko urobili správne. Ak sa vám táto stránka z nejakého dôvodu nezobrazuje, odporúčam znovu poctivo prejsť návod alebo treba skúsiť iný spôsob spustenia. A keď už naozaj nebudete vedieť kadiaľ kam, môžete vždy využiť komentárov pod článkom, kedy vám ja alebo niekto iný môže pomôcť.
Nabudúce, v lekcii Prvé aplikácie v Laravel , začneme vytvárať svoju prvú aplikáciu v Laravel frameworku. Ja prezradím, že sa bude jednať o jednoduchú kalkulačku, takže sa máte na čo tešiť!