Installa e ospita Laravel su Ubuntu 18.04 Bionic Beaver Linux
Obiettivo
Installa Laravel con Nginx e MariaDB su Ubuntu 18.04
Distribuzioni
Ubuntu 18.04 Castoro bionico
Fabbisogno
Un'installazione funzionante di Ubuntu 18.04 con privilegi di root
Difficoltà
Facile
Convenzioni
- # – richiede che determinati comandi Linux vengano eseguiti con privilegi di root direttamente come utente root o utilizzando il comando
sudo
- $ – richiede l'esecuzione di determinati comandi Linux come utente normale senza privilegi
Introduzione
Laravel si è rapidamente guadagnato il suo posto come il miglior framework PHP. Ha portato all'ecosistema PHP molte funzionalità di facile utilizzo per gli sviluppatori presenti in altri framework come Rails e, così facendo, ha modernizzato lo sviluppo PHP.
Se stai cercando di sviluppare con Laravel o di ospitarlo su Ubuntu 18.04, il processo di configurazione non è mai stato così semplice. Poiché Laravel è PHP, ci sono un paio di modi per gestirlo, ma Nginx e MariaDB forniscono un modo abbastanza semplice per far funzionare il tuo progetto con strumenti moderni pronti per la produzione.
Installare i pacchetti
Prima di poter iniziare a configurare tutto, ci sono alcuni pacchetti di cui avrai bisogno. Sono tutti disponibili nei repository di Ubuntu e sono tutti abbastanza aggiornati in Bionic, quindi non c'è motivo di cercare altrove.
sudo apt install composer php-mysql php-fpm php-mbstring php-tokenizer php-xml php-json php-common nginx mariadb-server
Ne tireranno di più, ma non sarà troppo male.
Crea il tuo progetto Lavavel
La prossima cosa che dovrete fare è iniziare il vostro progetto Laravel. Anche questo non è un compito troppo grande. Il pacchetto Composer che avete installato in precedenza gestisce praticamente tutto per voi e vi darà un'installazione Laravel funzionale pronta all'uso.
Inizia cambiando la directory nella tua directory /var/www/.
Dal momento che questo verrà servito con Nginx, questo è il posto migliore per organizzare i tuoi siti.
cd /var/www
Quindi, usa Composer per creare il tuo progetto. Il nome alla fine è il nome del tuo progetto e della cartella che lo contiene. Sceglilo di conseguenza.
sudo composer create-project --prefer-dist laravel/laravel yourProject
Installa Laravel con Composer su Ubuntu 18.04
Composer scaricherà e installerà automaticamente tutte le dipendenze PHP insieme a Laravel e le configurerà. Prima di poter iniziare a lavorare e servire il tuo progetto, cambia la proprietà di Nginx.
sudo chown -R www-data:www-data yourProject
Configura il tuo database
Successivamente, dovrai configurare il tuo database. Prima di iniziare ad aggiungere qualsiasi cosa, proteggi il tuo server.
sudo mysql-secure-install
Esamina, imposta la tua password di root e usa le loro impostazioni predefinite sicure.
Ora puoi accedere a MariaDB e configurare il tuo database per l'utilizzo da parte di Laravel.
sudo mysql -u root -p
Una volta entrato, inizia creando il tuo database.
> CREATE DATABASE laravel;
Quindi, crea un utente per utilizzare quel database.
> CREATE USER `user`@`localhost` IDENTIFIED BY 'yourpassword';
Concedere all'utente l'autorizzazione per l'utilizzo del database.
> GRANT ALL ON laravel.* TO `user`@`localhost`;
Infine, svuota i privilegi ed esci.
> FLUSH PRIVILEGES;
Connetti Laravel
Per impostazione predefinita, Laravel è configurato per utilizzare MySQL (MariaDB), ma è necessario fornirgli le informazioni corrette per connettersi al database appena configurato.
Configura il database Laravel su Ubuntu 18.04
Vai avanti e passa alla directory in cui hai installato Laravel. Vedrai una cartella di configurazione
lì. All'interno di quella cartella c'è un file di configurazione del database. Aprire config/database.php
. Scorri verso il basso per trovare il blocco MySQL come quello nella foto sopra. Modifica il nome, il nome utente e la password del database in modo che corrispondano a quelli che hai impostato. Quindi, salva ed esci.
Configura Nginx
L'ultimo pezzo del puzzle è Nginx. Questa è la parte che effettivamente servirà il tuo sito. Cambia in /etc/nginx
. In quella cartella troverai tutta la configurazione per Nginx. Non c'è bisogno di scherzare con nulla di tutto ciò. Se lo desiderate, potete modificare le opzioni in nginx.conf
, ma non è necessario far funzionare Laravel.
Ci sono due cartelle a cui devi prestare attenzione. Sono disponibili per i siti
e abilitati per i siti
. sites-available
contiene tutte le configurazioni del sito. Per iniziare a pubblicare un sito, crea un collegamento software alla configurazione del sito in abilitato
per il sito. Attualmente, c'è solo una voce. Eliminalo da entrambe le cartelle. Quindi, crea una nuova voce nei siti disponibili
per il tuo progetto.
Apri la nuova configurazione del sito nell'editor di testo e impostala in modo che sia simile a quanto segue.
server {
listen 80;
listen [::]:80;
server_name your-site.com
root /var/www/yourProject;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
}
Quando tutto riflette il tuo server, salva ed esci. Ora puoi riavviare Nginx per rendere effettive le modifiche.
sudo systemctl restart nginx
Puoi accedere al nome del server che hai specificato a Nginx per visualizzare il tuo sito.
Pensieri conclusivi
Laravel è estremamente potente e questa configurazione può portarvi a un'ottima configurazione di sviluppo o all'inizio di un server di produzione. C'è sicuramente di più che si può fare con Laravel e Nginx, quindi sentitevi liberi di esplorare diverse opzioni di configurazione su una macchina di sviluppo.