Come gestire il downtime pianificato di un sito
Ogni tanto ci viene chiesto se la visibilità di un sito nei risultati di ricerca di Google possa essere influenzata negativamente qualora il sito risulti inaccessibile al passaggio di Googlebot. A volte il downtime è inevitabile: un webmaster può decidere di disabilitare un sito a causa di lavori di manutenzione in corso o questioni che riguardano la sfera legale o culturale. Le interruzioni che non sono chiaramente segnalate come tali, tuttavia, possono peggiorare la reputazione di un sito. Anche se non possiamo garantire alcuna scansione, indicizzazione o posizionamento, esistono comunque metodi per gestire il downtime pianificato di un sito web in modo tale che, in linea di massima, non influiscano negativamente sulla visibilità nei risultati di ricerca.
Per esempio quando una pagina viene richiesta, invece di utilizzare un codice HTTP 404 (Not Found) o mostrare una pagina di errore con codice di stato 200 (OK), è meglio utilizzare un codice HTTP 503 (Service Unavailable) che indichi ai crawler dei motori di ricerca che il downtime è temporaneo. Inoltre, questo permette ai webmaster di fornire sia ai visitatori che ai bot una stima temporanea su quando il sito sarà nuovamente funzionante. Se nota, la durata del downtime può essere specificata in secondi o in relazione alla data e all’ora stimati per il completamento, grazia ad un'intestazione opzionale di Retry-After, che Googlebot può usare per determinare quando scansionare di nuovo l’URL.
Ritornare un codice HTTP 503 può essere un’ottima soluzione anche per altre situazioni. Incontriamo parecchi problemi con siti che utilizzano il codice 200 (OK) per errori del server, downtime, superamento di banda o al posto di “Under Construction”. Il codice HTTP 503 è la soluzione adeguata per tutti questi casi. Per quanto riguarda il downtime del server per manutenzione hardware, è una buona idea disporre di un server separato in grado di utilizzare il codice HTTP 503. E' importante, tuttavia, evitare di trattare il 503 come una soluzione permanente: 503 prolungati possono essere visti come un segno che il server è inaccessibile in modo permanente e ciò può portare alla rimozione degli URL dall’indice di Google.
header('HTTP/1.1 503 Service Temporarily Unavailable'); header('Retry-After: Sat, 8 Oct 2011 18:27:00 GMT');
Se utilizzate un codice 503 (Service Unavailable) e PHP, l'informazione nella header potrebbe apparire come questa.
In modo simile a ciò che è stato detto nell'articolo "Creazione di pagine 404 utili", è una buona idea fornire un messaggio 503 personalizzato, che spieghi la situazione agli utenti e li informi riguardo alla data in cui il sito sarà nuovamente disponibile. Per ulteriori informazioni riguardo i codici di risposta HTTP potete consultare RFC 2616.