Creare ed eseguire un progetto Laravel
Che cos'è Laravel?
Laravel è un framework PHP open source creato da Taylor Otwell, sviluppatore PHP. È progettato per fornire agli sviluppatori un toolkit pulito ed elegante per costruire applicazioni web moderne. Laravel offre una gamma ricca di funzionalità come routing, sessioni, cache, autenticazione, semplificando le attività di sviluppo web più comuni.
Caratteristiche principali e vantaggi di Laravel
- Semplicità ed eleganza: la sintassi di Laravel è semplice ed elegante, rendendo il codice più leggibile e manutenibile.
- Set di funzionalità ricco: include routing, autenticazione, gestione delle sessioni e caching, semplificando notevolmente il processo di sviluppo.
- Potente ORM: Eloquent ORM offre una semplice implementazione ActiveRecord per le operazioni di database.
- Design modulare: facile integrazione di librerie e estensioni di terze parti tramite il gestore di pacchetti Composer.
- Supporto dalla comunità: una vasta comunità di sviluppatori e un ricco ecosistema.
Laravel aiuta gli sviluppatori a costruire rapidamente applicazioni web e API di alta qualità, adatte a progetti di tutte le dimensioni, dalle piccole applicazioni ai grandi sistemi aziendali.
Creare ed eseguire un progetto Laravel con ServBay
In questo articolo, utilizzeremo l'ambiente PHP di ServBay per creare ed eseguire un progetto Laravel. Utilizzeremo la funzione "Hosting" di ServBay per configurare il server web e accedere al progetto tramite una semplice configurazione.
::: attenzione: se precedentemente eri un utente NGINX o Apache
ServBay utilizza Caddy come server web predefinito. Per gli utenti che passano da NGINX e Apache a ServBay, ci sono alcuni cambiamenti chiave da tenere a mente:
Configurazione di Caddy
ServBay ha integrato Caddy, ottimizzato e testato di default. Gli sviluppatori devono solo utilizzare la funzione "Hosting" di ServBay per gestire i siti, senza modificare manualmente i file di configurazione di Caddy.
Regole di riscrittura e .htaccess
In NGINX e Apache, gli sviluppatori solitamente scrivono da soli le regole di riscrittura e i file .htaccess per gestire la riscrittura degli URL e altre configurazioni. Tuttavia, le impostazioni predefinite di ServBay hanno già configurato le regole per Caddy, quindi a meno che non ci siano esigenze specifiche, gli sviluppatori non devono scrivere queste regole.
Ulteriori informazioni
Per ulteriori dettagli, visita Rewrite e htaccess, Come migrare un sito Apache a ServBay, Come migrare un sito NGINX a ServBay.
:::
Creazione del progetto Laravel
::: consiglio ServBay consiglia agli sviluppatori di posizionare i siti nella directory /Applications/ServBay/www
per una gestione più semplice. :::
Installare Composer
ServBay ha già preinstallato Composer, quindi non è necessaria un'installazione separata.
Creare il progetto Laravel
Usa Composer per creare un nuovo progetto Laravel:
bashcd /Applications/ServBay/www mkdir servbay-laravel-app cd servbay-laravel-app composer create-project --prefer-dist laravel/laravel .
1
2
3
4Accedere alla directory del progetto
Naviga nella directory del progetto Laravel appena creato:
bashcd /Applications/ServBay/www/servbay-laravel-app
1
Configurazione iniziale
Generare la chiave dell'applicazione
Laravel richiede una chiave dell'applicazione per garantire la sicurezza delle sessioni utente e di altri dati crittografati. È possibile generare una chiave dell'applicazione utilizzando il comando Artisan:
bashphp artisan key:generate
1Configurare le variabili d'ambiente
Configura le informazioni di connessione al database e altre variabili d'ambiente nel file
.env
. Assicurati che la configurazione seguente sia corretta:APP_NAME=Laravel APP_ENV=local APP_KEY=base64:... APP_DEBUG=true APP_URL=https://servbay-laravel-test.local LOG_CHANNEL=stack DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=servbay_laravel_app DB_USERNAME=root DB_PASSWORD=password
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Configurare il server web
Utilizza la funzione "Hosting" di ServBay per accedere al progetto Laravel tramite il server web. Nelle impostazioni di "Hosting" di ServBay, aggiungi un nuovo host:
- Nome:
My First Laravel Dev Site
- Dominio:
servbay-laravel-test.local
- Tipo di sito web:
PHP
- Versione PHP: seleziona
8.3
- Radice sito web:
/Applications/ServBay/www/servbay-laravel-app/public
Per i passaggi dettagliati, visita Aggiungere il primo sito.
Aggiungere codice di esempio
Aggiungi il seguente codice al file routes/web.php
per visualizzare “Hello ServBay!”:
Route::get('/', function () {
return 'Hello ServBay!';
});
2
3
Accedi al sito
Apri il browser e visita https://servbay-laravel-test.local
, vedrai la pagina visualizzare Hello ServBay!
.
Esempio database NoSQL
Esempio Memcached
Installare l'estensione Memcached
In ServBay, l'estensione Memcached è già preinstallata, quindi non è necessaria un'installazione aggiuntiva.
Configurare Memcached
Configura le informazioni di connessione a Memcached nel file
.env
:CACHE_STORE=memcached MEMCACHED_HOST=127.0.0.1
1
2Utilizzare Memcached
Usa la cache nelle rotte
routes/web.php
:phpuse Illuminate\Support\Facades\Cache; Route::get('/memcached', function () { Cache::put('key', 'value', 600); return Cache::get('key'); });
1
2
3
4
5
6Apri il browser e visita
https://servbay-laravel-test.local/memcached
Esempio Redis
Installare l'estensione Redis
In ServBay, l'estensione Redis è già preinstallata, quindi non è necessaria un'installazione aggiuntiva.
Configurare Redis
Configura le informazioni di connessione a Redis nel file
.env
:CACHE_STORE=redis REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379
1
2
3
4Utilizzare Redis
Usa la cache nelle rotte
routes/web.php
:phpuse Illuminate\Support\Facades\Redis; Route::get('/redis', function () { Redis::set('key', 'value'); return Redis::get('key'); });
1
2
3
4
5
6Apri il browser e visita
https://servbay-laravel-test.local/redis
Esempio database relazionale
Creare lo schema del database e i file di migrazione
Esempio MySQL
Configurare MySQL
Configura le informazioni di connessione a MySQL nel file
.env
:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=servbay_laravel_app DB_USERNAME=root DB_PASSWORD=password
1
2
3
4
5
6Creare il file di migrazione
Utilizza il comando Artisan per creare un file di migrazione:
bashphp artisan make:migration create_accounts_table
1Modificare il file di migrazione
Trova il file di migrazione appena creato nella directory
database/migrations
e modificalo per definire la struttura della tabella del database:phppublic function up() { Schema::create('accounts', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamps(); }); }
1
2
3
4
5
6
7
8
9Eseguire la migrazione
Utilizza il comando Artisan per eseguire la migrazione e creare la tabella del database:
bashphp artisan migrate
1Inserire dati nel conto
Inserisci dati nel conto nelle rotte
routes/web.php
:phpuse Illuminate\Support\Facades\DB; Route::get('/mysql-add', function () { DB::table('accounts')->insert([ 'name' => 'ServBay', 'email' => '[email protected]', ]); return 'Account added'; });
1
2
3
4
5
6
7
8
9Utilizzare MySQL
Consulta il database nelle rotte
routes/web.php
:phpuse Illuminate\Support\Facades\DB; Route::get('/mysql', function () { $users = DB::table('accounts')->get(); return $users; });
1
2
3
4
5
6Apri il browser e visita
https://servbay-laravel-test.local/mysql-add
ehttps://servbay-laravel-test.local/mysql
Esempio PostgreSQL
Configurare PostgreSQL
Configura le informazioni di connessione a PostgreSQL nel file
.env
:DB_CONNECTION=pgsql DB_HOST=127.0.0.1 DB_PORT=5432 DB_DATABASE=servbay_laravel_app DB_USERNAME=root DB_PASSWORD=password
1
2
3
4
5
6Creare il file di migrazione
Utilizza il comando Artisan per creare un file di migrazione:
bashphp artisan make:migration create_accounts_table
1Modificare il file di migrazione
Trova il file di migrazione appena creato nella directory
database/migrations
e modificalo per definire la struttura della tabella del database:phppublic function up() { Schema::create('accounts', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamps(); }); }
1
2
3
4
5
6
7
8
9Eseguire la migrazione
Utilizza il comando Artisan per eseguire la migrazione e creare la tabella del database:
bashphp artisan migrate
1Inserire dati nel conto
Inserisci dati nel conto nelle rotte
routes/web.app
:phpuse Illuminate\Support\Facades\DB; Route::get('/pgsql-add', function () { DB::table('accounts')->insert([ 'name' => 'ServBay', 'email' => '[email protected]', ]); return 'Account added'; });
1
2
3
4
5
6
7
8
9Utilizzare PostgreSQL
Consulta il database nelle rotte
routes/web.php
:phpuse Illuminate\Support\Facades\DB; Route::get('/pgsql', function () { $users = DB::table('accounts')->get(); return $users; });
1
2
3
4
5
6Apri il browser e visita
https://servbay-laravel-test.local/pgsql-add
ehttps://servbay-laravel-test.local/pgsql
Seguendo i passaggi sopra elencati, avrai creato ed eseguito con successo un progetto Laravel, utilizzando le funzionalità di ServBay per gestire e accedere al progetto, collegarti a vari database e interrogarne i dati.