HTTP 302 Found

Il reindirizzamento temporaneo: la risorsa si trova momentaneamente altrove, ma l'URL originale resta quello vero.

Cosa significa HTTP 302

HTTP 302 Found dice al client di recuperare la risorsa dall'URL nell'header Location, ma solo questa volta — l'URL originale resta l'indirizzo canonico e dovrebbe essere richiesto di nuovo in futuro.

Storicamente i browser cambiavano POST in GET quando seguivano un 302, il che contraddiceva la specifica. HTTP ha poi aggiunto 307 Temporary Redirect per garantire che il metodo venga preservato; 302 resta la scelta pragmatica predefinita per i semplici reindirizzamenti GET.

Cause comuni delle risposte 302

  • Una pagina viene servita temporaneamente da un'altra posizione (manutenzione, test A/B, landing page di campagna).
  • Flussi post-login o post-checkout che reindirizzano il browser (il pattern POST-redirect-GET, dove 303 è tecnicamente la scelta precisa).
  • Reindirizzamenti geografici o basati sulla lingua che variano per ogni visitatore.
  • Uno spostamento “permanente” configurato male e lasciato accidentalmente come 302 per anni.

Buone pratiche per gli sviluppatori

  • Se lo spostamento è in realtà permanente, passa a 301/308 — i 302 che durano a lungo inviano segnali contrastanti ai motori di ricerca.
  • Usa 307 quando il metodo di richiesta e il corpo devono essere preservati, 303 per forzare una GET dopo una POST.
  • Non mettere in cache le risposte 302 a meno che tu non aggiunga esplicitamente header Cache-Control.

Esempio di risposta

HTTP/1.1 302 Found
Location: https://example.com/summer-sale/
Cache-Control: no-store

Impatto SEO

I motori di ricerca mantengono indicizzato l'URL originale quando vedono un 302, poiché lo spostamento è dichiarato temporaneo. Un 302 lasciato in vigore per mesi viene di solito trattato da Google come un 301 di fatto, ma è meglio essere espliciti: scegli il codice che corrisponde alla tua intenzione.

FAQ

Un reindirizzamento 302 danneggia la SEO?

Non quando è usato per spostamenti realmente temporanei. I problemi sorgono quando uno spostamento permanente viene servito come 302, ritardando il trasferimento dei segnali al nuovo URL.

Qual è la differenza tra 302 e 307?

307 garantisce che il metodo HTTP venga preservato seguendo il reindirizzamento. 302 in pratica permette ai browser di convertire POST in GET.

Quando dovrei usare 303 See Other?

Dopo aver elaborato una POST, per inviare il browser a una pagina di risultato con GET — il classico pattern POST-redirect-GET.