V naslednjem članku si bomo ogledali Laravel in njegovo namestitev v Ubuntu. Gre za a odprtokodni PHP okvir zelo priljubljena. Njegov namen je olajšati razvoj aplikacij. Če iščete nov okvir PHP za razvijajte svoje projekte, morate poskusiti Laravel.
Laravel je ogrodje spletne aplikacije z izrazno in elegantno sintakso, ki bo razvoj naredila prijetno in ustvarjalno izkušnjo. Laravel poskuša olajšati razvoj skupnih nalog uporablja v večini spletnih projektov, kot so preverjanje pristnosti, usmerjanje, seje in predpomnjenje.
Cilj tega okvira je razvijalcu omogočiti prijeten razvojni proces, ne da bi pri tem žrtvovali funkcionalnost aplikacije. Laravel je dostopen in ponuja zmogljiva orodja, potrebna za velike in robustne aplikacije. Zagotovil nam bo nadzorne kontejnerje, ekspresiven sistem za selitev in tesno integrirano podporo za testiranje enot, ki nam bo dala orodja, ki jih bo kdo potreboval za izdelavo svoje zaupane aplikacije.
Preden začnemo, je vedno dobro preveriti, ali so obstoječe pisave in programska oprema v našem računalniku posodobljeni. V terminalu (Ctrl + Alt + T) bomo zapisali:
sudo apt-get update && sudo apt-get upgrade
Moram reči, da sem s tem, kar bom napisal tukaj, ta okvir namestil v Ubuntu 16.04, 17.10 in 18.04. Preden začnete z namestitvijo Laravel, namestiti bomo morali druge bistvene komponente.
Namestite PHP 7.1
Naslednji korak je namestite PHP skupaj z različnimi dodatnimi paketi Te so koristne, če boste sodelovali z Laravelom. V terminalu (Ctrl + Alt + T) bomo zapisali:
sudo add-apt-repository ppa:ondrej/php sudo apt-get update && sudo apt-get install php7.1 php7.1-mcrypt php7.1-xml php7.1-gd php7.1-opcache php7.1-mbstring
Čeprav samo skladišče Ubuntu ima na voljo PHP, Zdi se mi boljša ideja, da sem dodate tuj repozitorij, ker se pogosteje posodablja. Ta korak lahko preskočite in uporabite različico Ubuntu, če je to tisto, kar želite.
Namestite Apache
Čas je, da namestite strežnik Apache. Za povezavo Apacheja s PHP bi morali namestiti tudi paket libapache2-mod-php7.1.
sudo apt-get install apache2 libapache2-mod-php7.1
Namestite Laravel
Preden se poglobite v namestitev, boste morali namestiti Različice Git.
Če želite namestiti Laravel, najprej moramo namestiti Composer. To je orodje za upravljanje odvisnosti v PHP, ki vam bo omogočilo spakiranje vseh povezanih potrebnih knjižnic. Če želite namestiti Laravel in vse njegove odvisnosti, potrebujete Composer. Za namestitev tega orodja bomo morali v terminal (Ctrl + Alt + T) napisati naslednje ukaze (Ctrl + Alt + T):
cd /tmp curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
Ukaz curl prenese paket skladatelj.phar v naš imenik / Tmp. Ker pa bi nas bolj zanimalo, da bi skladatelj deloval globalno, ga moramo premakniti v imenik / usr / local / bin. Končal vse to, zdaj skladatelja lahko zaženemo kjer koli v našem operacijskem sistemu.
Če želite namestiti Laravel, bomo šli v javni html imenik v vašem sistemu. Ker uporabljamo Ubuntu in uporabljamo Apache, ga bomo namestili v imenik / Var / www / html.
cd /var/www/html sudo composer create-project laravel/laravel tu-proyecto - -prefer-dist
Zgornji ukaz bo ustvaril imenik «your-project» z namestitvijo Laravel. Composer uporablja git za prenos in namestitev vseh paketov in modulov, ki jih potrebuje Laravel delati.
Konfiguriranje Apache
Zdaj, ko smo namestili Laravel, preidemo na konfigurirajte spletni strežnik Apache.
Naslednji korak je dodelite ustrezna dovoljenja za imenik projekta. Za to moramo omogočiti dostop do skupine www-data in dodeliti dovoljenja za pisanje v imenik za shranjevanje. V terminalu (Ctrl + Alt + T) bomo zapisali:
sudo chgrp -R www-data /var/www/html/tu-proyecto sudo chmod -R 775 /var/www/html/tu-proyecto/storage
Zdaj bomo šli v / etc / apache2 / sites-available directory in uporabili naslednji ukaz za ustvarite konfiguracijsko datoteko za našo namestitev Laravel:
cd /etc/apache2/sites-available sudo nano laravel.conf
Ko se nano odpre, bomo datoteki dodali naslednjo vsebino. Še bo zamenjajte yourdomain.tld z imenom domene vašega spletnega mesta znotraj datoteke. Tudi bo preimenuj projekt s katero smo že ustvarili. V primeru, da ga uporabljate lokalno, napišite localhost.tld.
<VirtualHost *:80> ServerName tudominio.tld ServerAdmin webmaster@localhost DocumentRoot /var/www/html/tu-proyecto/public <Directory /var/www/html/tu-proyecto> AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Zdaj moramo omogočiti to novo ustvarjeno datoteko .conf. Tudi mi bomo morali onemogočite privzeto datoteko .conf ki je nameščen z namestitvijo Apache. Poleg tega moramo omogoči mod_rewrite tako da lahko trajne povezave delujejo pravilno.
sudo a2dissite 000-default.conf && sudo a2ensite laravel.conf && sudo a2enmod rewrite
In na koncu znova zaženemo apache z:
sudo service apache2 restart
S tem je vaša namestitev Laravel zdaj končana. Obiščite Naslov IP ali ime domene vašega strežnika s spletnim brskalnikom (v mojem primeru http: // localhost). Če je šlo vse dobro, boste videli privzeto stran Laravel, s katere lahko dostopate do dokumentacija tega okvira in druge možnosti.
Zelo dobro do tu;
cd / tmp
koder -sS https://getcomposer.org/installer | php
sudo mv composer.phar / usr / local / bin / composer
Kjer ni več služil
Zakaj od tam ni več delovalo? Kakšno napako vam pokaže?
Vse je šlo dobro do te točke
sudo composer create-project laravel / laravel your-project - -prefer-dist
V katerem se pojavi naslednja napaka:
Composerja ne zaženite kot root / super uporabnik! Glej https://getcomposer.org/root za podrobnosti
[Symfony \ Component \ Console \ Exception \ RuntimeException]
Možnost "-p" ne obstaja.
Zaženite ga brez sudo.
Težava je v tem, da je v ukazu napaka. Pridružiti se morate 2 «-», ker če je ne zajamete kot «-p». Upam, da komentar deluje, tako sem tudi uspel.
Imam vprašanje, vse mi je pomagalo, vse, Laravel se odpre, vendar želim ustvariti še en projekt, edino, kar sem naredil, je bilo vse, od ustvarjanja projekta s skladateljem in ga poimenovati LARAVEL_2 (prvi projekt, ki sem ga ustvaril, je bil LARAVEL), ta projekt Na isti poti / var / www / html kot v prvem ustvarjenem projektu je vse v redu, dokler ne pridem do dela, za katerega mislim, da mi povzroča težave, ki je v konfiguracijski datoteki navideznega gostitelja
Za prvi projekt ga imam takole:
Ime strežnika localhost.tld
ServerAdmin spletni skrbnik @ localhost
DocumentRoot / var / www / html / LARAVEL / public
AllowOverride All
Prijava v napako $ {APACHE_LOG_DIR} /error.log
CustomLog $ {APACHE_LOG_DIR} /access.log skupaj
In vse se je izteklo popolnoma, toda ko delam za drugi projekt, ga imam takole:
ServerName domačija.test
ServerAdmin mymail@hotmail.com
DocumentRoot / var / www / html / LARAVEL_2 / public
AllowOverride All
Prijava v napako $ {APACHE_LOG_DIR} /error.log
CustomLog $ {APACHE_LOG_DIR} /access.log skupaj
Zaženem naslednje ukaze, ne da bi imel kakršne koli težave, dokler ne končam znova zagnati apache, težava je v tem, da zdaj ne morem vstopiti v prvi projekt tako, da na svoj prenosnik namestim localhost, še manj pa homestead.test, ki je po tem imenu kot jaz Lahko dostopam do svojega projekta, kako naj to rešim?
Ta članek mi je bil v veliko pomoč, hotel sem narediti nekaj drugega in šlo je nekoliko narobe.
Uredite datoteko / etc / hosts in v novo vrstico dodajte:
127.0.0.1 domačija.test
znova zaženite apache in v brskalnik vnesite:
http://homestead.test
Pozdravljeni, želim vedeti, ali deluje v ubuntu 20.04lts, nato namestite in me vpraša, da manjkajo nekatere odvisnosti, kot so: Vaših zahtev ni bilo mogoče razrešiti na namestljiv nabor paketov.
laravel / framework v7.9.2 zahteva ext-mbstring * -> v vašem sistemu manjka zahtevana razširitev PHP mbstring.
prosim pomagajte
Čeprav se zdi, da je ta vadnica stara več let, mi je sredi leta 2022 delovala na Ubuntu Jammy Jellyfish.
Zelo dobro delo Damian 🙂