Come installare Laravel PHP Framework su Alma Linux 9
In questa pagina
- Prerequisiti
- Installazione di LAMP Stack e Composer
- Configurazione di MariaDB
- Creazione del progetto Laravel
- Configurazione dell'host virtuale HTTP
- Configurazione di Firewalld
- Accesso a Laravel dal computer locale
- Conclusione
Laravel è un framework per applicazioni Web basato su PHP utilizzato per creare applicazioni Web full-stack aziendali e robuste. Segue l'architettura model-view-controller (MVC) ed è basato su Symfony. Laravel supporta più database, inclusi MySQL, PostgreSQL, SQLite e SQL Server. Laravel fornisce anche un'impalcatura per l'autenticazione sicura.
Questo tutorial ti mostrerà come installare Laravel sul server Alma Linux 9. Ti guideremo attraverso l'installazione di Laravel con LAMP Stack (Linux, Apache/Httpd, MariaDB e PHP) e Composer.
Prerequisiti
Prima di procedere, assicurati di avere quanto segue:
- Un server Alma Linux 9.
- Un utente non root con privilegi di amministratore.
- Un nome di dominio locale.
- Un SELinux con modalità permissiva.
Installazione di LAMP Stack e Composer
Laravel è uno dei framework web PHP più popolari per la creazione di applicazioni web. Per installare Laravel, è necessario installare le dipendenze, incluso LAMP Stack (Apache/Httpd, MariaDb e PHP) e Composer. Attualmente Laravel richiede PHP 8.3. È necessario installare PHP 8.3 tramite un repository di terze parti.
Innanzitutto, aggiungi il repository di terze parti EPEL e Remi al tuo server Alma Linux utilizzando il comando seguente. Il repository EPEL verrà utilizzato per installare pacchetti come Composer, mentre il repository Remi fornisce più versioni PHP per Laravel.
sudo dnf install epel-release dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm
Ora abilita il repository PHP 8.3 tramite Remi utilizzando il comando seguente.
sudo dnf reset php -y
sudo dnf module enable php:remi-8.3 -y
Successivamente, installa i pacchetti LAMP Stack (Apache/Httpd, MariaDB e PHP) e Composer con il seguente comando. Immettere y per confermare l'installazione.
sudo dnf install httpd mariadb-server composer php php-curl php-bcmath php-json php-mbstring php-xml php-tokenizer php-zip
Una volta completata l'installazione, avvia e abilita il servizio httpd con il comando seguente.
sudo systemctl start httpd
sudo systemctl enable httpd
Quindi avvia e abilita il server MariaDB con il seguente comando.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Ora verifica le versioni PHP e Composer utilizzando il comando seguente. Dovresti vedere che PHP 8.3 e Composer 2.7.1 sono installati.
php -v
sudo -u apache composer -v
Infine, esegui il comando seguente per verificare i tuoi moduli PHP. Assicurati che fileinfo, mbstring e openssl siano abilitati.
php -m
Configurazione di MariaDB
Con PHP configurato, proteggerai il server MariaDB e creerai un nuovo database e utente per Laravel. Il server MariaDB fornisce un'utilità di installazione sicura di MariaDB per proteggere il server MariaDB e il client MariaDB per la connessione al server MariaDB tramite la riga di comando.
Per proteggere il server MariaDB, esegui il comando seguente e ti verranno richieste alcune configurazioni del server MariaDB. Inserisci Y o N per essere d'accordo o in disaccordo sull'applicazione delle nuove modifiche a MariaDB.
sudo mariadb-secure-installation
Di seguito sono riportate alcune delle configurazioni del server MariaDB che ti verranno richieste:
- Passare all'autenticazione unix_socket?. Immettere n e premere ENTER. L'utente root predefinito di MariaDB è già protetto. facoltativamente, puoi anche abilitarlo digitando y per sì.
- Cambiare la password di root?. Inserisci y per confermare e impostare la tua nuova password root MariaDB.
- Rimuovere l'utente anonimo?. Immettere y per confermare.
- Non consentire l'accesso root da remoto? Immettere y per confermare. Se si utilizza l'utente root MariaDB sarà consentita solo la connessione locale.
- Rimuovere il database di test e accedervi?. Immettere y per confermare e rimuovere il "test" del database predefinito.
- Infine, inserisci nuovamente y per ricaricare tutti i privilegi delle tabelle sul tuo server MariaDB e applicare le nuove modifiche.
Dopo aver protetto MariaDB, creerai un nuovo database e un nuovo utente per Laravel tramite il client mariadb.
Accedi al server MariaDB con il comando client mariadb riportato di seguito. Inserisci la password root di MariaDB quando richiesto.
sudo mariadb -u root -p
Ora esegui le seguenti query per creare un nuovo database e utente per Laravel. In questo esempio creerai un nuovo database laravelapp, un utente laravel, con la password p4ssw0rd. Modifica i dettagli del database e dell'utente di seguito con le tue informazioni.
CREATE DATABASE laravelapp;
CREATE USER laravel@localhost IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON laravelapp.* TO laravel@localhost;
FLUSH PRIVILEGES;
Successivamente, esegui la query seguente per verificare i privilegi per l'utente laravel. Assicurati che l'utente laravel possa accedere al database laravelapp.
SHOW PRIVILEGES FOR laravel@localhost;
Infine, digita quit per uscire dal server MariaDB.
Creazione del progetto Laravel
Quindi ora che hai configurato sia PHP che MariaDB, scarichiamo e installiamo Laravel sul tuo sistema. Creerai e configurerai la directory del progetto, quindi scaricherai e installerai il progetto Laravel tramite Composer.
Crea nuove directory per il progetto Laravel /var/www/laravelapp e directory aggiuntive .cache e .config per archiviare la cache e la configurazione del Composer. Quindi, cambia la proprietà di quelle directory all'utente apache.
mkdir -p /var/www/laravelapp /usr/share/httpd/.composer/{.cache,.config}
sudo chown -R apache:apache /var/www/laravelapp /usr/share/httpd/.composer
Vai alla directory /var/www/laravelapp ed esegui il comando compositore riportato di seguito per scaricare e installare Laravel.
cd /var/www/laravelapp/
sudo -u apache composer create-project laravel/laravel .
Il processo di download dovrebbe essere così:
Una volta scaricato Laravel, apri il file .env utilizzando il seguente comando dell'editor nano.
nano .env
Modifica l'APP_URL con il nome del tuo dominio locale, quindi modifica i dettagli del database con le informazioni del database MariaDB.
APP_URL=http://dev.hwdomain.local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelapp
DB_USERNAME=laravel
DB_PASSWORD=password
Al termine, salvare il file ed uscire.
Ora esegui il comando seguente per migrare il database e riempire le tabelle con nuovi dati di esempio.
sudo -u apache php artisan migrate
sudo -u apache php artisan db:seed
Configurazione dell'host virtuale HTTP
Dopo aver installato Laravel, creerai una nuova configurazione di host virtuale Httpd che Laravel utilizzerà. Per questo, assicurati di avere un nome di dominio locale o qualsiasi dominio casuale come desideri. Puoi configurare questo dominio in seguito.
Crea una nuova configurazione dell'host virtuale httpd /etc/httpd/conf.d/laravel.conf utilizzando il seguente comando dell'editor nano.
sudo nano /etc/httpd/conf.d/laravel.conf
Inserisci la seguente configurazione e assicurati di modificare l'opzione ServerName con il tuo nome di dominio Laravel.
<VirtualHost *:80>
ServerAdmin [email
ServerName dev.hwdomain.local
DocumentRoot /var/www/laravelapp/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/laravelapp>
AllowOverride All
</Directory>
ErrorLog /var/log/httpd/laravel-error.log
CustomLog /var/log/httpd/laravel-access.log combined
</VirtualHost>
Salvare il file ed uscire dall'editor.
Ora esegui il comando seguente per verificare la tua configurazione httpd. Se hai la sintassi httpd corretta, dovresti ottenere un output Sintassi OK.
sudo apachectl configtest
Infine, riavvia il servizio httpd per applicare la nuova configurazione dell'host virtuale per Laravel.
sudo systemctl restart httpd
Configurazione di Firewalld
prima di accedere all'installazione di Laravel, devi aprire entrambe le porte HTTP e HTTPS sul tuo sistema, cosa che può essere eseguita tramite Firewalld.
Apri sia il traffico HTTP che HTTPS sul tuo server Alma Linux con il comando seguente.
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
Ora ricarica firewalld per applicare le modifiche.
sudo firewall-cmd --reload
Infine, verifica le regole dell'elenco firewalld utilizzando il comando seguente. Vedrai sia i servizi HTTP che HTTPS aggiunti a firewalld.
sudo firewall-cmd --list-all
Accesso a Laravel dal computer locale
Per impostare un nome di dominio locale per la tua installazione Laravel, utilizza quanto segue:
- Per gli utenti Windows, modificare il file C:\Windows\System32\drivers\etc\hosts come amministratore.
- Per gli utenti Linux e Mac, aprire il file /etc/hosts con privilegi root.
Inserisci la configurazione qui sotto e assicurati di modificare l'indirizzo IP e il nome del dominio con le tue informazioni.
192.168.5.60 dev.hwdomain.local
Salvare ed uscire dal file.
Ora apri il tuo browser web e visita la tua installazione di Laravel http://dev.hwdomain.local/. Se l'installazione ha esito positivo, dovresti ottenere la seguente pagina indice Laravel.
Conclusione
Congratulazioni! Hai completato l'installazione di Laravel su Alma Linux 9 con lo stack LAMP (Linux, Apache/Httpd, MariaDB e PHP) e Composer. Hai anche configurato firewalld per aprire entrambe le porte HTTP e HTTPS, quindi hai anche configurato il nome di dominio locale per il tuo sviluppo Laravel tramite il file /etc/hosts o il file C:\Windows\System32\drivers\etc\hosts.