Il 307, chiamato impropriamente «errore 307» (non è un errore), è un codice di stato del protocollo HTTP che indica un reindirizzamento temporaneo. Quando un server web risponde a una richiesta con questo codice, comunica al client che la risorsa richiesta si trova momentaneamente a un indirizzo diverso da quello originale. A differenza di altri codici di reindirizzamento, l’errore 307 impone che il metodo della richiesta originale venga preservato durante la nuova richiesta verso la destinazione indicata.
Questa caratteristica lo rende particolarmente rilevante in ambito SEO e nello sviluppo di applicazioni web moderne, dove le richieste possono essere di tipo diverso da una semplice lettura. Il codice appartiene alla classe dei codici 3xx, quella dedicata alle redirezioni, ed è stato introdotto con l’aggiornamento delle specifiche del protocollo per colmare alcune ambiguità presenti nei codici precedenti.
Cosa indica il codice 307
Il codice 307 è definito dalle specifiche tecniche del protocollo come “reindirizzamento temporaneo”. La risposta del server include un’intestazione che indica al client l’indirizzo verso cui ripetere la richiesta. La particolarità principale risiede nel fatto che il client deve mantenere invariato il metodo di richiesta: se la richiesta iniziale era una richiesta di invio dati, anche la richiesta verso il nuovo indirizzo deve utilizzare lo stesso metodo.
Questa regola distingue il 307 da altri codici di reindirizzamento temporaneo, che in alcuni casi possono comportare una modifica del metodo. Il comportamento del 307 è quindi pensato per garantire l’integrità della comunicazione, evitando che dati inviati dal client vengano persi o trasformati durante il passaggio verso la nuova destinazione.
307 e gli altri codici di reindirizzamento
Per comprendere appieno il significato del 307 è utile confrontarlo con i codici più comuni della stessa famiglia. I codici di reindirizzamento si distinguono principalmente per due criteri: la temporaneità o permanenza della redirezione e il trattamento del metodo di richiesta.
| Codice | Tipo di redirezione | Metodo preservato | Uso tipico |
|---|---|---|---|
| 301 | Permanente | No, può cambiare | Cambio definitivo di indirizzo |
| 302 | Temporanea | No, può cambiare | Redirezione temporanea generica |
| 307 | Temporanea | Sì, obbligatorio | Redirezione temporanea con metodi non di lettura |
| 308 | Permanente | Sì, obbligatorio | Cambio definitivo con metodi non di lettura |
In quali casi si usa il 307
L’errore 307 trova applicazione in scenari in cui è fondamentale che la natura della richiesta originale venga mantenuta. Si pensi a un modulo di contatto o a un’operazione di invio dati: se il server rispondesse con un codice che altera il metodo, i dati trasmessi potrebbero non essere elaborati correttamente.
Manutenzione e configurazioni temporanee
Un caso frequente è rappresentato da interventi di manutenzione o da configurazioni temporanee del server. In queste situazioni l’amministratore può decidere di dirottare il traffico verso una pagina alternativa senza compromettere le operazioni che prevedono l’invio di dati.
Bilanciamento del carico nelle applicazioni web
Nelle applicazioni web il 307 può servire a indirizzare le richieste verso server specifici mantenendo il metodo originale. Il caso in cui lo si incontra più spesso, però, è un altro: il «307 Internal Redirect» che il browser genera da solo quando un sito ha attivato HSTS e la richiesta http viene portata a https senza passare dal server.
Effetti del 307 sul posizionamento
Dal punto di vista SEO, il 307 è un reindirizzamento temporaneo: per Google è un segnale più debole di un redirect permanente per scegliere la nuova URL come canonica, ma trasmette PageRank come gli altri redirect 3xx. Se resta in piedi a lungo, Google può trattarlo come permanente.
Perché il 301 si comporta diversamente
Il codice 301, essendo permanente, è un segnale forte per Google di sostituire la vecchia URL con la nuova nell’indice. Il 307, al contrario, segnala che la situazione è temporanea. Questa distinzione è cruciale per far comparire nei risultati l’URL che si desidera.
Quando è opportuno usare il 307
È opportuno utilizzare il 307 solo quando la redirezione è effettivamente temporanea. Se la modifica dell’indirizzo è destinata a durare nel tempo, è preferibile ricorrere a un codice permanente. Inoltre, è buona norma assicurarsi che la destinazione della redirezione sia pertinente e non generi catene di reindirizzamenti successivi.
Il 307 interno generato dall’HSTS
Se negli strumenti per sviluppatori del browser vedi un 307 «Internal Redirect», non è il server a rispondere: il browser, avendo memorizzato la regola HSTS del sito, passa direttamente da http a https. Nei log del server non compare e non richiede interventi.
I controlli da fare prima e dopo la configurazione
La gestione corretta di questo codice richiede attenzione sia dal lato server sia dal lato client. Di seguito sono elencati i passaggi principali per un utilizzo consapevole e sicuro.
- Verificare che la redirezione sia realmente temporanea prima di configurare il codice 307.
- Controllare che l’indirizzo di destinazione sia corretto e raggiungibile.
- Assicurarsi che il metodo della richiesta originale venga preservato lungo tutto il percorso.
- Evitare catene di reindirizzamenti che possano rallentare il caricamento delle pagine.
- Monitorare i registri del server per individuare eventuali redirezioni indesiderate.
- Aggiornare la configurazione verso un codice permanente se la modifica diventa definitiva.
- Testare il comportamento della redirezione con diversi tipi di richiesta.
- Documentare le redirezioni attive per facilitare la manutenzione futura.
Domande frequenti sull’errore 307
Che cosa distingue l’errore 307 dall’errore 302?
Entrambi indicano una redirezione temporanea, ma il 307 impone che il metodo della richiesta originale venga mantenuto, mentre il 302 in alcuni contesti può comportare una modifica del metodo.
L’errore 307 danneggia il posizionamento sui motori di ricerca?
Il 307 trasmette PageRank come gli altri redirect 3xx, ma è un segnale più debole per scegliere la nuova URL come canonica: l’URL originale tende a restare nei risultati. Se è usato per uno spostamento definitivo, meglio un 301 o un 308.
Quando è preferibile usare il codice 308 invece del 307?
Il codice 308 va utilizzato quando la redirezione è permanente ma si desidera comunque preservare il metodo della richiesta originale, combinando stabilità e integrità della comunicazione.
Il 307 può essere utilizzato per le richieste di invio dati?
Sì, anzi è proprio in questi casi che il 307 mostra la sua utilità, poiché garantisce che i dati inviati non vengano alterati durante la redirezione.
Come si configura un reindirizzamento 307 su un server web?
Si specifica il codice 307 nella regola di reindirizzamento. Per esempio, in Apache con mod_alias: Redirect 307 /vecchia /nuova; in Nginx: return 307 /nuova;. La sintassi esatta dipende dal server e dal CMS.
Quali strumenti permettono di verificare la presenza di un errore 307?
Gli strumenti di analisi delle intestazioni di risposta e i pannelli di sviluppo dei browser consentono di individuare il codice di stato restituito dal server per ciascuna richiesta, compreso il 307 interno generato dal browser con HSTS.
Dal glossario al progettoDevi cambiare dominio o piattaforma senza perdere visibilità?La migrazione SEO prepara il passaggio (redirect, struttura, controlli prima e dopo) per ridurre il rischio di perdere posizionamento su Google.Scopri la migrazione SEO
Voci correlate:
