Scegliere SSR, SSG o ISR per ogni rotta di un’app Next.js
Decidi la strategia di rendering e cache di ogni rotta del tuo progetto Next.js (statica, ISR, dinamica, streaming o client) con una tabella motivata, codice di esempio e come verificarla. Pensato per ChatGPT, Claude, Gemini e Microsoft Copilot. Include 4 variabili personalizzabili e puoi copiarlo gratuitamente con un clic.
Avanzato · Testo · In attesa di revisione editoriale
Prompt
Agisci come architetto specializzato in Next.js App Router, prestazioni web e SEO tecnico.
Contesto:
- Progetto: {{progetto}}
- Rotte e freschezza dei dati: {{rotte}}
- Hosting: {{hosting}}
- Versione di Next.js: {{versione_next}}
Se manca un'informazione decisiva (quali rotte dipendono dalla sessione dell'utente, ogni quanto cambiano i dati, se i contenuti arrivano da un CMS con webhook), chiedimela prima di decidere.
Consegna:
1. Una tabella per rotta: strategia (statica al build, statica con rivalidazione periodica o su richiesta, dinamica per richiesta, streaming con Suspense, caricamento lato client), motivo, origine dei dati, impatto su SEO e tempo al primo byte.
2. Come invalidare i contenuti in ogni caso (rivalidazione periodica, revalidatePath o revalidateTag da un webhook) e cosa succede se la rivalidazione fallisce.
3. Cosa rende dinamica una rotta senza volerlo (cookie, header, parametri di ricerca, fetch senza cache) e come isolare la parte personalizzata perché il resto resti statico.
4. Un breve codice di esempio per due o tre rotte rappresentative.
5. I limiti di {{hosting}} che influiscono sulla decisione (ad esempio, l'export statico non consente il rendering per richiesta).
6. Come verificarlo: cosa mostra l'output di `next build` per ogni rotta e quali header di cache controllare in produzione.
Vincoli:
- Il comportamento di cache predefinito è cambiato tra le versioni di Next.js: indica cosa presupponi per {{versione_next}} e consiglia di verificarlo nella documentazione ufficiale di quella versione.
- Non inventare metriche di prestazione; se stimi qualcosa, segnalalo come stima.
- Preferisci lo statico ogni volta che i requisiti di freschezza lo consentono.
Formato: tabella principale, brevi sezioni per tema e un elenco finale dei rischi.Come usarlo
- Elenca le tue rotte reali con la frequenza di aggiornamento dei contenuti e se dipendono dall’utente. 2. Indica dove fai il deploy e la versione esatta di Next.js. 3. Applica la tabella e verifica con l’output di next build prima di pubblicare.
Esempio d'uso
Progetto: negozio di mobili con blog · Rotte: /, /prodotti/[slug] (prezzi cambiano ogni giorno), /blog/[slug], /account (privato) · Hosting: Vercel · Versione: Next.js 15.
Esempio di risultato
Ipotesi: Next.js 15, in cui fetch non viene più messo in cache per impostazione predefinita. Verifica la documentazione ufficiale della tua versione.
Strategia per rotta
| Rotta | Strategia | Motivo | Invalidazione |
|---|---|---|---|
/ | Statica con revalidazione | Cambia ogni settimana | revalidateTag('home') dal CMS |
/prodotti/[slug] | Statica + ISR; prezzo e disponibilità in un blocco Suspense | La SEO richiede HTML veloce; la disponibilità cambia ogni giorno | revalidateTag('prodotto:slug') a ogni aggiornamento del magazzino |
/blog/[slug] | Statica con generateStaticParams | Cambia raramente | revalidatePath dal webhook del CMS |
/account | Dinamica per richiesta | Privata, per utente; legge i cookie | Nessuna cache |
Cosa rende dinamica una rotta per sbaglio
- Leggere
cookies()oheaders()in un layout condiviso: si porta dietro tutte le rotte figlie. - Usare
searchParamsnella pagina prodotto per un filtro secondario.
Soluzione: isolare la parte personalizzata (carrello, saluto) in un componente client o in un blocco Suspense, così il resto resta statico.
Come verificarlo
Nell'output di next build ogni rotta è indicata come statica (○), SSG (●) o dinamica (ƒ). Se /prodotti/[slug] risulta ƒ, qualcosa sta leggendo i dati della richiesta…
Dati chiave
- Categoria
- Programmazione e sviluppo · Next.js
- Tipo di output
- Testo
- Livello
- Avanzato
- Pensato per
- ChatGPT, Claude, Gemini e Microsoft Copilot
- Verificato in
- In attesa di verifica editoriale
- Variabili
- Progetto, Rotte e freschezza dei dati, Hosting e Versione di Next.js
- Lingua
- Italiano
- Prezzo
- Gratuito, senza registrazione
- Aggiornato
- 07/11/2026
Domande frequenti
Che differenza c’è tra SSG e ISR?
Con SSG la pagina viene generata al build e resta uguale fino al deploy successivo. Con ISR viene servita statica ma rigenerata dopo un intervallo o su richiesta, senza nuovo deploy.
Il rendering lato server è sempre meglio per la SEO?
Per la SEO conta che l’HTML iniziale contenga il contenuto. Una pagina statica o ISR lo ottiene come l’SSR ed è di solito più veloce ed economica da servire.
Perché una rotta diventa dinamica senza che io lo voglia?
Di solito perché legge cookie, header o parametri di ricerca, oppure esegue un fetch senza cache. Il prompt ti aiuta a trovare queste chiamate e isolarle.
A cosa serve questo prompt?
Decidi la strategia di rendering e cache di ogni rotta del tuo progetto Next.js (statica, ISR, dinamica, streaming o client) con una tabella motivata, codice di esempio e come verificarla.
Con quali strumenti di IA funziona?
È pensato per ChatGPT, Claude, Gemini e Microsoft Copilot. Non lo abbiamo ancora verificato in questi strumenti, quindi i risultati possono variare da uno all'altro.
Come personalizzo il prompt?
Clicca su «Personalizza» e compila le variabili (Progetto, Rotte e freschezza dei dati, Hosting e Versione di Next.js). Il testo si aggiorna all'istante e poi puoi copiarlo con un clic. I valori vengono salvati solo nel tuo browser.
Serve esperienza per usarlo?
È di livello avanzato: è pensato per persone con esperienza nell'argomento, in grado di valutare e regolare il risultato.
Questo prompt è gratuito?
Sì. Tutti i prompt di HomeCasa Prompts sono gratuiti, senza registrazione né abbonamento. Puoi usarli anche in progetti professionali.
Posso fidarmi dell'output dell'IA?
Consideralo una bozza di alta qualità: verifica sempre dati, cifre e affermazioni importanti prima di pubblicare o prendere decisioni.