Jinsi ya Kufunga Mfumo wa Laravel PHP na Nginx kwenye Ubuntu 20.04


Laravel ndio mfumo maarufu zaidi, usiolipishwa na wa chanzo huria wa PHP duniani, unaojulikana kwa sintaksia inayoeleza na maridadi. Laravel inaweza kufikiwa, ina nguvu, na inatoa baadhi ya zana bora zaidi za ukuzaji wa wavuti zinazohitajika kwa matumizi makubwa, thabiti na ya kisasa.

Katika nakala hii, utajifunza jinsi ya kusakinisha Mfumo wa Laravel PHP kwenye seva ya Ubuntu 20.04 inayoendesha kwenye seva ya wavuti ya Nginx.

  • Jinsi ya Kusakinisha LEMP Stack na PhpMyAdmin katika Ubuntu 20.04

Hatua ya 1: Kusakinisha Moduli za PHP Zinazohitajika

Baada ya kusanidi safu ya LEMP kwenye seva yako ya Ubuntu 20.04 kama ilivyoelezewa kwenye mwongozo kwenye kiungo hapo juu, unahitaji kusakinisha viendelezi vya ziada vya PHP vinavyohitajika na Laravel kama ifuatavyo:

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

Hatua ya 2: Kuunda Hifadhidata ya Laravel

Ifuatayo, unahitaji kuunda hifadhidata ya MySQL kwa programu yako ya Laravel. Kwa hivyo, ingia kwenye ganda lako la mysql na uunda hifadhidata kama ifuatavyo.

$ 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

Hatua ya 3: Kufunga Mtunzi katika Ubuntu 20.04

Laravel hutumia mtunzi (meneja tegemezi wa PHP) kudhibiti utegemezi wake. Kwa hivyo, kabla ya kutumia Laravel, hakikisha kuwa umesakinisha Mtunzi kwenye mfumo wako kama inavyoonyeshwa.

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

Hatua ya 4: Kufunga Laravel katika Ubuntu 20.04

Baada ya kufunga mtunzi, tumia ili kufunga faili za Laravel. Nenda kwenye saraka yako ya /var/www/html ambapo faili za wavuti huhifadhiwa, kisha usakinishe Laravel ukitumia mtunzi kama inavyoonyeshwa. Kumbuka kubadilisha example.com kwa jina la saraka ambapo faili za Laravel zitahifadhiwa.

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

Hatua ya 5: Kusanidi Laravel katika Ubuntu 20.04

Ili kuorodhesha yaliyomo kwenye usakinishaji mpya wa Laravel, endesha ls amri ifuatayo. Utagundua kuwa faili ya .env imeundwa kiotomatiki, ambayo hapo awali, ingebidi iundwe kwa mikono.

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

Ifuatayo, weka ruhusa zinazofaa kwenye saraka ya Laravel kama ifuatavyo.

$ 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/

Kisha, Laravel hutumia ufunguo wa programu ili kulinda vipindi vya watumiaji na data nyingine iliyosimbwa kwa njia fiche. Chaguo-msingi .env ina ufunguo chaguo-msingi wa programu lakini unahitaji kuzalisha mpya kwa ajili ya uwekaji wa laravel yako kwa madhumuni ya usalama.

$ sudo php artisan key:generate

Ufunguo uliotengenezwa utaongezwa katika faili ya .env kama thamani ya APP_KEY. Unaweza kutazama kitufe kilichoongezwa kwa kutumia amri ya grep.

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

Pia unahitaji kusanidi maelezo ya muunganisho wa hifadhidata ya Laravel katika .env kama inavyoonyeshwa kwenye picha ya skrini ifuatayo.

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

Hatua ya 6: Kusanidi NGINX ili Kutumikia Maombi ya Laravel

Ili NGINX itumie programu yako mpya, unahitaji kuiundia kizuizi cha seva ndani ya usanidi wa NGINX, chini ya saraka ya /etc/nginx/sites-available/.

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

Katika usanidi ulio hapa chini, sasisha maagizo ya msingi hadi saraka ya umma ya programu ya Laravel na uhakikishe kuwa umebadilisha www.example.com na jina la kikoa la tovuti yako kama inavyoonyeshwa.

Pia, weka maagizo ya fastcgi_pass yanafaa kuelekeza kwenye kitu ambacho PHP-FPM inasikiza kwa ajili ya maombi (kwa mfano 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;
        }
}

Hifadhi faili kisha uwashe usanidi wa tovuti ya Laravel kwa kuunda kiungo kutoka /etc/nginx/sites-available/example.com.conf hadi /etc/nginx/sites-enabled/ saraka. Kando na hilo, ondoa usanidi wa kizuizi cha seva chaguo-msingi.

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

Ifuatayo, angalia ikiwa syntax ya usanidi wa NGINX ni sahihi kwa kuendesha amri ifuatayo kabla ya kuanzisha upya huduma.

$ sudo nginx -t
$ sudo systemctl restart nginx

Hatua ya 7: Kufikia Programu ya Laravel kutoka kwa Kivinjari cha Wavuti

Katika hatua hii, unahitaji kujaribu ikiwa utumaji wako wa Laravel unafanya kazi vizuri na kama unaweza kufikiwa kutoka kwa kivinjari. Ili kutumia kikoa dummy, example.com, hebu tutumie faili ya /etc/hosts kwenye kompyuta yako ili kuunda DNS ya ndani.

Tekeleza amri zifuatazo ili kupata anwani ya IP ya seva ya Laravel na uiongeze kwenye faili ya /etc/hosts (badilisha thamani kulingana na mipangilio yako).
$ip ad
$echo “192.168.56.11 example.com” | sudo tee -a /etc/hosts

Sasa fungua kivinjari kwenye kompyuta ya ndani na utumie anwani ifuatayo ili kusogeza.

http://www.example.com/

Kwa kuwa sasa umesakinisha Laravel, unaweza kuanza kuunda programu yako ya wavuti au tovuti. Kwa habari zaidi, angalia hati za Laravel.