Sådan installeres Laravel PHP Web Framework i CentOS


Laravel er en gratis open source, kraftfuld PHP-ramme med en udtryksfuld og tiltalende syntaks. Det har en raffineret, enkel og læsbar syntaks til udvikling af moderne, robuste og kraftfulde applikationer fra bunden. Derudover leverer Laravel flere værktøjer, du har brug for til at skrive ren, moderne og vedligeholdelig PHP-kode.

  • Kraftig ORM (Object-Relational Mapping) til at arbejde med din database.
  • Ukompliceret og hurtig routing-mekanisme.
  • Kraftig beholder til indsprøjtning af afhængighed.
  • Giver en samlet API på tværs af flere købackend, inklusive Amazon SQS og Redis og mange flere, til session og cache-opbevaring.
  • Understøtter en simpel godkendelsesmekanisme.
  • Understøtter udsendelse af begivenheder i realtid.
  • Understøtter også agnostisk migrering af databaser og skemaopbygning.
  • Understøtter baggrundsjobbehandling og mere.

Dit system skal opfylde følgende krav for at kunne køre den nyeste version af Laravel:

  • PHP> = 7.1.3 med OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype og JSON PHP Extensions.
  • Komponist - en pakkehåndtering på applikationsniveau til PHP.

  1. CentOS 7 med LEMP Stack

I denne artikel forklarer vi, hvordan du installerer den nyeste version af Laravel 5.6 PHP Framework på CentOS, Red Hat, Fedora-systemer.

Trin 1: Opsæt Yum Repositories

1. Først og fremmest skal du aktivere REMI- og EPEL-arkiver i din Linux-distribution for at have de opdaterede pakker (PHP, Nginx, MariaDB osv.) Ved hjælp af følgende kommandoer

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

Trin 2: Installer Nginx, MySQL og PHP

2. Dernæst skal vi installere et fungerende LEMP-miljø på dit system. Hvis du allerede har en fungerende LEMP-stak, kan du springe dette trin over, hvis du ikke installerer den ved hjælp af følgende kommandoer.

# yum install nginx        [On CentOS/RHEL]

3. Når nginx er installeret, skal du starte webserveren og aktivere den til at starte ved systemstart og derefter kontrollere status ved hjælp af følgende kommandoer.

------------- 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. For at få adgang til nginx fra det offentlige netværk skal du åbne en port 80 på systemets firewall for at modtage eksterne anmodninger som vist.

------------- 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. Start derefter og aktiver PHP-FPM-tjenesten, og kontroller, om den er i gang.

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

Trin 3: Installer Composer og Laravel PHP Framework

6. Installer nu Composer (afhængighedsmanager til PHP) til installation af krævede Laravel-afhængigheder ved hjælp af følgende kommandoer.

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

7. Når du har installeret Composer, kan du installere Laravel ved at køre komponisten create-project-kommandoen som følger.

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

8. Når du nu laver en lang liste over dit webdokumentrod, skal teststedskataloget findes derinde, der indeholder dine laravel-filer.

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

Trin 4: Konfigurer Laravel-installation

9. Indstil nu de relevante tilladelser til teststedets bibliotek og laravel-filer ved hjælp af følgende kommandoer.

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

10. Hvis du desuden har SELinux aktiveret, skal du opdatere sikkerhedskonteksten for lagrings- og bootstrap/cache-mapperne ved hjælp af følgende kommandoer.

# 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. Opret derefter en miljøfil til din applikation ved hjælp af den medfølgende prøvefil.

# cp .env.example .env

12. Dernæst bruger Laravel en applikationsnøgle til at sikre brugersessioner og andre krypterede data. Så du skal generere og indstille din applikationsnøgle til en tilfældig streng ved hjælp af følgende kommando.

# php artisan key:generate

Trin 5: Konfigurer Nginx-serverblok til Laravel

13. I dette trin skal du konfigurere en Nginx-serverblok til testsite for at få adgang til den fra en webbrowser. Opret en .conf -fil til den under /etc/nginx/conf.d/ -mappen som vist.

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

Og tilføj følgende konfiguration i den (brug værdier, der gælder for dit miljø, i dette eksempel er vores dummy-domæne testinglaravel.com). Bemærk, at laravel-indeksfilen er gemt i/var/www/html/testsite/public, dette vil være roden til dit websted/din applikation.

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;
	}
}

Gem filen og afslut. Genstart derefter din webserver for at de seneste ændringer skal træde i kraft.

# systemctl restart nginx

Trin 6: Adgang til Laravel-webstedet

14. Hvis du dernæst ikke har et fuldt registreret domænenavn, skal du bruge filen/etc/hosts til at oprette en lokal DNS til testformål.

Tilføj følgende linje i din/etc/hosts-fil som vist (brug systemets IP-adresse og domæne i stedet for henholdsvis 192.168.43.31 og testinglaravel.com).

192.168.43.31  testinglaravel.com

15. Endelig få adgang til dit Laravel-websted fra en browser ved hjælp af følgende URL.

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

Hvis du udvikler dig lokalt, kan du bruge PHP's indbyggede udviklingsserver til at betjene din applikation eller dit websted som følger. Denne kommando starter en udviklingsserver på http:/localhost: 8000 eller http://127.0.0.1:8000. På CentOS/REHL skal denne port åbnes i firewallen, så du kan betjene din applikation på denne måde.

# php artisan serve

Fra dette tidspunkt er du klar til at gå, du kan begynde at udvikle dit websted. For yderligere konfigurationer som cache, database og sessioner kan du gå til Laravel-hjemmesiden.

Laravel er en PHP-ramme med en udtryksfuld og smuk syntaks til praktisk, moderne webudvikling. Vi håber, at alt gik godt under installationen, hvis ikke, brug kommentarformularen nedenfor til at dele dine forespørgsler med os.