Kako instalirati Laravel PHP Web Framework u CentOS


Laravel je besplatni, otvoreni izvor, moćan PHP okvir s izražajnom i privlačnom sintaksom. Ima profinjenu, jednostavnu i čitljivu sintaksu za razvoj modernih, robusnih i moćnih aplikacija od temelja. Uz to, Laravel nudi nekoliko alata potrebnih za pisanje čistog, modernog i održivog PHP koda.

  • Moćan ORM (objektno-relacijsko mapiranje) za rad s vašom bazom podataka.
  • Jednostavan i brz mehanizam usmjeravanja.
  • Moćan spremnik za ubrizgavanje ovisnosti.
  • Pruža objedinjeni API u više pozadinskih redova, uključujući Amazon SQS i Redis i mnoge druge, za pohranu sesija i predmemorije.
  • Podržava jednostavan mehanizam provjere autentičnosti.
  • Podržava emitiranje događaja u stvarnom vremenu.
  • Također podržava agnostičke migracije baze podataka i graditelj sheme.
  • Podržava obradu zadataka u pozadini i još mnogo toga.

Vaš sustav mora zadovoljiti sljedeće zahtjeve da bi mogao pokretati najnoviju verziju Laravela:

  • PHP> = 7.1.3 s OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype i JSON PHP proširenjima.
  • Skladatelj - upravitelj paketa na razini aplikacije za PHP.

  1. CentOS 7 s LEMP stogom

U ovom ćemo članku objasniti kako instalirati najnoviju verziju Laravel 5.6 PHP Framework na CentOS, Red Hat i Fedora sustave.

Korak 1: Postavljanje Yum spremišta

1. Prije svega, morate omogućiti REMI i EPEL spremištima u vašoj Linux distribuciji da imaju ažurirane pakete (PHP, Nginx, MariaDB, itd.) Pomoću sljedećih naredbi

------------- On CentOS/RHEL 7.x ------------- 
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

------------- On CentOS/RHEL 6.x -------------
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

Korak 2: Instalirajte Nginx, MySQL i PHP

2. Dalje, na vaš sustav moramo instalirati radno LEMP okruženje. Ako već imate ispravni LEMP stog, možete preskočiti ovaj korak, ako ne, instalirati ga pomoću sljedećih naredbi.

# yum install nginx        [On CentOS/RHEL]

3. Jednom kada je nginx instaliran, pokrenite web poslužitelj i omogućite mu pokretanje prilikom pokretanja sustava, a zatim provjerite status pomoću sljedećih naredbi.

------------- On CentOS/RHEL 7.x ------------- 
# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

------------- On CentOS/RHEL 6.x -------------
# service nginx start  
# chkconfig nginx on
# service nginx status

4. Da biste pristupili nginxu iz javne mreže, morate otvoriti priključak 80 na vatrozidu sustava da biste primali vanjske zahtjeve kao što je prikazano.

------------- On CentOS/RHEL 7.x -------------
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload 

------------- On CentOS/RHEL 6.x -------------
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# service iptables restart
# yum install mariadb-server php-mysql
# systemctl start mariadb.service
# /usr/bin/mysql_secure_installation
# yum install yum-utils
# yum-config-manager --enable remi-php72
# yum install php php-fpm php-common php-xml php-mbstring php-json php-zip

5. Zatim pokrenite i omogućite PHP-FPM uslugu i provjerite radi li.

------------- On CentOS/RHEL 7.x ------------- 
# systemctl start php-fpm
# systemctl enable php-fpm
# systemctl status php-fpm

------------- On CentOS/RHEL 6.x -------------
# service php-fpm start  
# chkconfig php-fpm on
# service php-fpm status

Korak 3: Instalirajte Composer i Laravel PHP Framework

6. Sada instalirajte Composer (upravitelj ovisnosti za PHP) za instaliranje potrebnih ovisnosti Laravel pomoću sljedećih naredbi.

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

7. Nakon što instalirate Composer, Laravel možete instalirati pokretanjem naredbe composer create-project, kako slijedi.

# cd /var/www/html/
# sudo composer create-project --prefer-dist laravel/laravel testsite 

8. Sada kada napravite dugački popis korijena vašeg web dokumenta, tamo bi trebao postojati direktorij testista koji sadrži vaše datoteke laravel.

$ ls -l /var/www/html/testsite

Korak 4: Konfigurirajte instalaciju Laravel

9. Sada postavite odgovarajuća dopuštenja za direktorij mjesta testiranja i datoteke laravel pomoću sljedećih naredbi.

# chmod -R 775 /var/www/html/testsite
# chown -R apache.apache /var/www/html/testsite
# chmod -R 777 /var/www/html/testsite/storage/

10. Osim toga, ako ste omogućili SELinux, morate ažurirati sigurnosni kontekst direktorija za pohranu i bootstrap/cache pomoću sljedećih naredbi.

# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/bootstrap/cache(/.*)?'
# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/storage(/.*)?'
# restorecon -Rv '/usr/share/nginx/html/testapp'

11. Zatim stvorite datoteku okruženja za svoju aplikaciju pomoću dostavljenog uzorka datoteke.

# cp .env.example .env

12. Dalje, Laravel koristi aplikacijski ključ za zaštitu korisničkih sesija i ostalih šifriranih podataka. Dakle, trebate generirati i postaviti ključ aplikacije na slučajni niz pomoću sljedeće naredbe.

# php artisan key:generate

Korak 5: Konfigurirajte blok Nginx poslužitelja za Laravel

13. U ovom koraku morate konfigurirati blok Nginx poslužitelja za testno mjesto kako biste mu pristupili iz web preglednika. Izradite datoteku .conf za to u direktoriju /etc/nginx/conf.d/, kao što je prikazano.

# vi /etc/nginx/conf.d/testsite.conf

I dodajte sljedeću konfiguraciju u nju (koristite vrijednosti primjenjive na vaše okruženje, u ovom primjeru naša je lažna domena testinglaravel.com). Imajte na umu da je indeksna datoteka laravel pohranjena u/var/www/html/testsite/public, ovo će biti korijen vašeg web mjesta/aplikacije.

server {
	listen      80;
	server_name testinglaravel.com;
	root        /var/www/html/testsite/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:/var/run/php/php7.2-fpm.sock;
	}
	location ~ /\.ht {
		deny all;
	}
}

Spremite datoteku i izađite. Zatim ponovo pokrenite web poslužitelj kako bi nedavne promjene stupile na snagu.

# systemctl restart nginx

Korak 6: Pristupite web mjestu Laravel

14. Dalje, ako nemate potpuno registrirano ime domene, morate upotrijebiti datoteku/etc/hosts za stvaranje lokalnog DNS-a u svrhu testiranja.

Dodajte sljedeći redak u datoteku/etc/hosts kao što je prikazano (koristite IP adresu i domenu vašeg sustava umjesto 192.168.43.31, odnosno testinglaravel.com).

192.168.43.31  testinglaravel.com

15. Napokon pristupite web mjestu Laravel iz preglednika koristeći sljedeći URL.

http://testinglaravel.com
OR
http://your-ip-address

Ako se razvijate lokalno, možete upotrijebiti ugrađeni razvojni poslužitelj PHP-a da služi vašoj aplikaciji ili web mjestu, kako slijedi. Ova će naredba pokrenuti razvojni poslužitelj na http:// localhost: 8000 ili http://127.0.0.1:8000. Na CentOS/REHL, ovaj priključak trebao bi se otvoriti u vatrozidu da biste na ovaj način mogli služiti svojoj aplikaciji.

# php artisan serve

Od ovog trenutka, spremni ste za početak, možete započeti razvoj svoje web stranice. Za dodatne konfiguracije poput predmemorije, baze podataka i sesija možete otići na početnu stranicu Laravela.

Laravel je PHP okvir s izražajnom i lijepom sintaksom za praktičan, moderan web razvoj. Nadamo se da se tijekom instalacije sve odvijalo dobro, ako ne, upotrijebite obrazac za komentar u nastavku da biste podijelili svoje upite s nama.