Skip to main content

Routing di base

La route più semplice di Laravel accetta un URI e una closure. Puoi definire in modo semplice route e comportamento senza complessi file di configurazione.

File di route predefiniti

Tutte le route Laravel sono definite nei file di route della directory routes/. Questi file vengono caricati automaticamente da Laravel in base alla configurazione di bootstrap/app.php. In routes/web.php definisci le route destinate al browser. Alle route di questo file si applica il gruppo di middleware web, che fornisce sessione, protezione CSRF e cifratura dei cookie.

Route API

Se la tua applicazione espone un’API stateless, puoi abilitare il routing API con il comando Artisan install:api.
Il comando install:api installa Laravel Sanctum e crea il file routes/api.php. Sanctum fornisce una guard di autenticazione tramite API token semplice e robusta, adatta a consumatori API di terze parti, SPA e applicazioni mobili.
Le route di routes/api.php sono stateless e vi si applica il gruppo di middleware api. Inoltre, a tutte le route viene applicato automaticamente il prefisso URI /api, quindi non serve aggiungerlo manualmente. Per cambiare il prefisso, modifica il file bootstrap/app.php dell’applicazione.

Metodi HTTP disponibili

Il router permette di registrare route per tutti i metodi HTTP.
Per route che rispondono a più metodi HTTP usa match o any.
Nei form HTML che accettano POST, PUT, PATCH o DELETE nei file di route web, includi sempre la direttiva @csrf. In caso contrario la richiesta viene rifiutata.

Route che restituiscono una vista

Se una route restituisce solo una vista, puoi usare Route::view per scrivere in modo conciso.

Parametri di route

Parametri obbligatori

Per ottenere dinamicamente parti dell’URL usa i parametri di route. Racchiudi i parametri tra {} e ricevili come argomenti della callback della route.
Puoi definire anche più parametri.
I parametri di route non possono contenere il carattere /.

Parametri opzionali

Per rendere opzionale un parametro, aggiungi ? in fondo al suo nome e imposta un valore predefinito per l’argomento corrispondente.

Vincoli sui parametri tramite espressioni regolari

Con il metodo where puoi vincolare il formato dei parametri con espressioni regolari.
I pattern più comuni possono essere scritti anche con metodi comodi.

Route con nome

Con le route con nome puoi fare riferimento a una route tramite il suo nome quando generi URL o effettui redirect.

Generazione dell’URL a partire dal nome della route

Per generare un URL dal nome di una route usa l’helper route.

Redirect

Gruppi di route

Raggruppa le route correlate per condividere impostazioni comuni come middleware, controller e prefissi.

Middleware

Controller

Puoi raggruppare le route che usano lo stesso controller.

Prefisso

Puoi anteporre un prefisso comune all’URI delle route.

Elenco delle route

Per elencare tutte le route definite, usa il comando Artisan.
Per includere anche le informazioni sui middleware:
Per mostrare solo le route che iniziano con un URI specifico:

Prossimi passi

Viste

Impara a creare viste e a passare dati da un controller.
Ultima modifica il 13 luglio 2026