Kako namestiti Laravel PHP Framework z Nginxom na Ubuntu 20.04


Laravel je najbolj priljubljen, brezplačen in odprtokoden PHP okvir na svetu, znan po svoji izraziti in elegantni sintaksi. Laravel je dostopen, zmogljiv in ponuja nekaj najboljših orodij za spletni razvoj, ki so potrebna za velike, robustne in sodobne aplikacije.

V tem članku boste izvedeli, kako namestiti Laravel PHP Framework na strežnik Ubuntu 20.04, ki se izvaja na spletnem strežniku Nginx.

  • Kako namestiti LEMP Stack s PhpMyAdmin v Ubuntu 20.04

1. korak: Namestitev potrebnih modulov PHP

Po nastavitvi sklada LEMP na strežniku Ubuntu 20.04, kot je opisano v priročniku v zgornji povezavi, morate namestiti dodatne razširitve PHP, ki jih zahteva Laravel, kot sledi:

$ sudo apt update
$ sudo apt php-common php-json php-mbstring php-zip php-xml php-tokenizer

2. korak: Ustvarjanje baze podatkov za Laravel

Nato morate za aplikacijo Laravel ustvariti bazo podatkov MySQL. Torej, prijavite se v svojo lupino mysql in ustvarite bazo podatkov, kot sledi.

$ sudo mysql
MariaDB [(none)]> CREATE DATABASE laraveldb;
MariaDB [(none)]> GRANT ALL ON laraveldb.* to 'webmaster'@'localhost' IDENTIFIED BY 'tecmint';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit

3. korak: Namestitev Composerja v Ubuntu 20.04

Laravel za upravljanje odvisnosti uporablja skladatelja (upravitelja odvisnosti za PHP). Zato pred uporabo Laravela zagotovite, da je v sistemu nameščen Composer, kot je prikazano.

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ sudo chmod +x /usr/local/bin/composer

4. korak: Namestitev Laravela v Ubuntu 20.04

Po namestitvi skladatelja z njim namestite datoteke Laravel. Premaknite se v svoj imenik /var/www/html , kjer so shranjene spletne datoteke, nato namestite Laravel s pomočjo skladatelja, kot je prikazano. Ne pozabite zamenjati example.com z imenom imenika, v katerem bodo shranjene datoteke Laravel.

$ cd /var/www/html
$ composer create-project --prefer-dist laravel/laravel example.com

5. korak: Konfiguriranje Laravela v Ubuntu 20.04

Če želite seznam vsebine nove namestitve Laravel, zaženite naslednji ukaz ls. Opazili boste, da je bila samodejno ustvarjena datoteka .env , ki bi jo v preteklosti morali ročno ustvariti.

$ ls -la /var/www/html/example.com/

Nato nastavite ustrezna dovoljenja za imenik Laravel, kot sledi.

$ sudo chown -R :www-data /var/www/html/example.com/storage/
$ sudo chown -R :www-data /var/www/html/example.com/bootstrap/cache/
$ sudo chmod -R 0777 /var/www/html/example.com/storage/
$ sudo chmod -R 0775 /var/www/html/example.com/bootstrap/cache/

Nato Laravel uporablja aplikacijski ključ za zaščito uporabniških sej in drugih šifriranih podatkov. Privzeti .env vsebuje privzeti aplikacijski ključ, vendar morate zaradi varnosti uvesti novega za uvajanje laravel-a.

$ sudo php artisan key:generate

Ustvarjeni ključ bo dodan v datoteko .env kot vrednost APP_KEY . Dodani ključ si lahko ogledate z ukazom grep.

$ grep -i APP_Key /var/www/html/example.com/.env

Podrobnosti povezave baze podatkov Laravel morate konfigurirati tudi v .env , kot je prikazano na naslednjem posnetku zaslona.

$ sudo nano /var/www/html/example.com/.env

6. korak: Konfiguriranje NGINX za serviranje aplikacije Laravel

Da bo NGINX služil vaši novi aplikaciji, morate zanj v konfiguraciji NGINX v imeniku /etc/nginx/sites-available/ ustvariti strežniški blok.

$ sudo nano /etc/nginx/sites-available/example.com.conf

V spodnji konfiguraciji posodobite korensko direktivo v javni imenik aplikacije Laravel in zamenjajte www.example.com z imenom domene vašega spletnega mesta, kot je prikazano.

Nastavite tudi, da mora direktiva fastcgi_pass kazati na medij, ki ga PHP-FPM posluša za zahteve (na primer fastcgi_pass unix: /run/php/php7.4-fpm.sock ):

server{
        server_name www.example.com;
        root        /var/www/html/example.com/public;
        index       index.php;

        charset utf-8;
        gzip on;
        gzip_types text/css application/javascript text/javascript application/x-javascript  image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
        location / {
                try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ \.php {
                include fastcgi.conf;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        }
        location ~ /\.ht {
                deny all;
        }
}

Shranite datoteko in nato omogočite konfiguracijo spletnega mesta Laravel tako, da ustvarite povezavo od /etc/nginx/sites-available/example.com.conf do /etc/nginx/sites-enabled/ imenik. Poleg tega odstranite privzeto konfiguracijo blokov strežnika.

$ sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
$ sudo rm /etc/nginx/sites-enabled/default

Nato preverite, ali je sintaksa konfiguracije NGINX pravilna, tako da pred ponovnim zagonom storitve zaženete naslednji ukaz.

$ sudo nginx -t
$ sudo systemctl restart nginx

7. korak: Dostop do aplikacije Laravel iz spletnega brskalnika

Na tej stopnji morate preizkusiti, ali vaša namestitev Laravel deluje dobro in ali je do njega mogoče dostopati iz brskalnika. Če želite uporabiti navidezno domeno example.com , uporabimo datoteko /etc/hosts v vašem lokalnem računalniku za ustvarjanje lokalnega DNS.

Zaženite naslednje ukaze, da dobite naslov IP strežnika Laravel in ga dodate v datoteko /etc/hosts (vrednost zamenjajte v skladu z vašimi nastavitvami).
$ip oglas
$echo “192.168.56.11 example.com” | sudo tee -a/etc/hosts

Zdaj odprite spletni brskalnik v lokalnem računalniku in za navigacijo uporabite naslednji naslov.

http://www.example.com/

Zdaj, ko ste namestili Laravel, lahko začnete graditi svojo spletno aplikacijo ali spletno mesto. Za več informacij glejte dokumentacijo Laravel.