Come installare Laravel PHP Web Framework in CentOS
Laravel è un framework PHP potente e open source gratuito con una sintassi espressiva e accattivante. Ha una sintassi raffinata, semplice e leggibile per sviluppare da zero applicazioni moderne, robuste e potenti. Inoltre, Laravel fornisce diversi strumenti necessari per scrivere codice PHP pulito, moderno e gestibile.
Leggi anche: Come installare Laravel PHP Framework su Ubuntu
Caratteristiche principali di Laravel:
- Potente ORM (Object-Relational Mapping) per lavorare con il tuo database.
- Meccanismo di routing semplice e veloce.
- Potente contenitore per l'iniezione delle dipendenze.
- Fornisce un'API unificata su più backend di coda, tra cui Amazon SQS e Redis e molti altri, per l'archiviazione di sessioni e cache.
- Supporta un semplice meccanismo di autenticazione.
- Supporta la trasmissione di eventi in tempo reale.
- Supporta anche migrazioni indipendenti dal database e generatore di schemi.
- Supporta l'elaborazione dei lavori in background e altro ancora.
Requisiti di sistema
Il tuo sistema deve soddisfare i seguenti requisiti per poter eseguire la versione più recente di Laravel:
- PHP >= 7.1.3 con estensioni PHP OpenSSL, PDO, Mbstring, Tokenizer, XML, Ctype e JSON.
- Composer: un gestore di pacchetti a livello di applicazione per PHP.
Ambiente di test:
- CentOS 7 con stack LEMP
In questo articolo spiegheremo come installare l'ultima versione di Laravel 5.6 PHP Framework su sistemi CentOS, Red Hat, Fedora.
Passaggio 1: imposta i repository Yum
1. Prima di tutto, devi abilitare i repository REMI e EPEL nella tua distribuzione Linux per avere i pacchetti aggiornati (PHP<, Nginx, MariaDB, ecc.) utilizzando i seguenti comandi
------------- 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
Passaggio 2: installa Nginx, MySQL e PHP
2. Successivamente, dobbiamo installare un ambiente LEMP funzionante sul tuo sistema. Se hai già uno stack LEMP funzionante, puoi saltare questo passaggio, altrimenti installarlo utilizzando i seguenti comandi.
Installa Nginx
yum install nginx [On CentOS/RHEL]
3. Una volta installato nginx, avviare il server Web e abilitarlo all'avvio all'avvio del sistema, quindi verificare lo stato utilizzando i seguenti comandi.
------------- 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. Per accedere a nginx dalla rete pubblica, devi aprire una porta 80 sul firewall del tuo sistema per ricevere richieste esterne come mostrato.
------------- 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
Installa MySQL
yum install mariadb-server php-mysql
systemctl start mariadb.service
/usr/bin/mysql_secure_installation
Installa PHP
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. Successivamente, avvia e attiva il servizio PHP-FPM e controlla se è attivo e funzionante.
------------- 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
Passaggio 3: installa Composer e Laravel PHP Framework
6. Ora installa Composer (gestore delle dipendenze per PHP) per installare le dipendenze Laravel richieste utilizzando i seguenti comandi.
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer
7. Dopo aver installato Composer, puoi installare Laravel eseguendo il comando composer create-project, come segue.
cd /var/www/html/
sudo composer create-project --prefer-dist laravel/laravel testsite
8. Ora, quando fai un lungo elenco della radice del tuo documento web, la directory testsite dovrebbe esistere lì, contenente i tuoi file laravel.
ls -l /var/www/html/testsite
Passaggio 4: configurare l'installazione di Laravel
9. Ora imposta le autorizzazioni appropriate sulla directory testsite e sui file laravel utilizzando i seguenti comandi.
chmod -R 775 /var/www/html/testsite
chown -R apache.apache /var/www/html/testsite
chmod -R 777 /var/www/html/testsite/storage/
10. Inoltre, se hai SELinux abilitato, devi aggiornare il contesto di sicurezza delle directory di archiviazione e bootstrap/cache utilizzando i seguenti comandi.
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. Quindi crea un file di ambiente per la tua applicazione, utilizzando il file di esempio fornito.
cp .env.example .env
12. Successivamente, Laravel utilizza una chiave dell'applicazione per proteggere le sessioni utente e altri dati crittografati. Quindi è necessario generare e impostare la chiave dell'applicazione su una stringa casuale utilizzando il seguente comando.
php artisan key:generate
Passaggio 5: configurare Nginx Server Block per Laravel
13. In questo passaggio, devi configurare un blocco server Nginx per testsite, per potervi accedere da un browser web. Crea un file .conf
nella directory /etc/nginx/conf.d/ come mostrato.
vi /etc/nginx/conf.d/testsite.conf
E aggiungi la seguente configurazione (usa valori applicabili al tuo ambiente, in questo esempio, il nostro dominio fittizio è testinglaravel.com). Tieni presente che il file indice laravel è archiviato in /var/www/html/testsite/public, questa sarà la radice del tuo sito/applicazione.
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;
}
}
Salvare il file ed uscire. Quindi riavvia il server web affinché le modifiche recenti abbiano effetto.
systemctl restart nginx
Passaggio 6: accedere al sito Web Laravel
14. Successivamente, se non disponi di un nome di dominio completamente registrato, devi utilizzare il file /etc/hosts per creare un DNS locale a scopo di test.
Aggiungi la seguente riga nel tuo file /etc/hosts come mostrato (usa l'indirizzo IP e il dominio del tuo sistema invece di 192.168.43.31 e testinglaravel.com rispettivamente).
192.168.43.31 testinglaravel.com
15. Infine accedi al tuo sito Laravel da un browser, utilizzando il seguente URL.
http://testinglaravel.com
OR
http://your-ip-address
Se stai sviluppando localmente, puoi utilizzare il server di sviluppo integrato di PHP per servire la tua applicazione o il tuo sito, come segue. Questo comando avvierà un server di sviluppo su http://localhost:8000 o http://127.0.0.1:8000. Su CentOS/REHL, questa porta dovrebbe essere aperta nel firewall per poter servire la tua applicazione in questo modo.
php artisan serve
Da questo punto sei pronto per partire, puoi iniziare a sviluppare il tuo sito. Per configurazioni aggiuntive come cache, database e sessioni, puoi andare alla home page di Laravel.
Laravel è un framework PHP con una sintassi espressiva e bella per lo sviluppo web pratico e moderno. Ci auguriamo che tutto sia andato bene durante l'installazione, in caso contrario, utilizza il modulo di commento qui sotto per condividere le tue domande con noi.