Non è l’unica opzione, ma la più pulita. Spiego meglio.
Opzione 1: Migrare a Next.js (Raccomandato)
Sforzo: Alto
Beneficio: SSR completo, massima visibilità AI
Next.js è basato su React, quindi la migrazione è concettualmente simile. Stai aggiungendo la capacità SSR, non riscrivendo tutto.
Cambi chiave:
- Passare al routing di Next.js
- Implementare getServerSideProps o getStaticProps
- Adeguare i pattern di fetch dei dati
Opzione 2: Aggiungere un layer di pre-rendering
Sforzo: Medio
Beneficio: I crawler AI ricevono HTML, gli utenti l’SPA
Come funziona:
- Un servizio come Prerender.io si pone davanti
- Rileva gli user agent dei bot (GPTBot, ecc.)
- Serve HTML pre-renderizzato ai bot
- Gli utenti continuano a usare l’SPA
Considerazioni:
- Costo aggiuntivo
- Complessità nel debug
- I contenuti pre-renderizzati devono restare aggiornati
Opzione 3: Approccio ibrido
Sforzo: Medio
Beneficio: Solo le pagine critiche in SSR, il resto rimane SPA
Solo per pagine marketing/contenuto:
- Costruirle con SSR (Next.js o separato)
- Mantenere le funzionalità app come SPA
- Visibilità AI per ciò che conta di più
La mia raccomandazione:
Se hai molti contenuti per la visibilità AI, affronta la migrazione a Next.js. Il pre-rendering aggiunge complessità senza risolvere il problema alla radice.