Lunedì 9 dicembre 2024
Lasciateci memorizzare nella cache, per favore.
Man mano che internet è cresciuto nel corso degli anni, è aumentata anche la quantità di dati sottoposti a scansione da parte di Google. Sebbene l'infrastruttura di scansione di Google abbia sempre supportato meccanismi di memorizzazione nella cache euristica, il numero di richieste che possono essere restituite dalle cache locali è diminuito: 10 anni fa circa lo 0,026% del totale dei recuperi era memorizzabile nella cache, che non è un dato particolarmente impressionante; oggi invece è dello 0,017%.
Perché la memorizzazione nella cache è importante?
La memorizzazione nella cache è un elemento fondamentale del grande puzzle di internet; consente di caricare le pagine a grandi velocità durante le visite ripetute, consente di risparmiare risorse di calcolo e quindi anche risorse naturali, e consente di risparmiare una quantità enorme di costosa larghezza di banda sia per i client che per i server.
In particolare, se avete un sito di grandi dimensioni con contenuti che cambiano raramente in singoli URL, consentire la memorizzazione nella cache a livello locale potrebbe contribuire a eseguire la scansione del vostro sito in modo più efficiente. L'infrastruttura di scansione di Google supporta la memorizzazione nella cache HTTP basata su regole come definita dallo standard HTTP Caching, in particolare tramite l'intestazione della risposta ETag
e della richiesta If-None-Match
e l'intestazione della risposta Last-Modified
e della richiesta If-Modified-Since
.
Consigliamo vivamente di utilizzare ETag
perché è meno soggetta a errori e sbagli (il valore non è strutturato, a differenza di Last-Modified
). Se avete la possibilità, configuratele entrambe: internet vi ringrazierà. Forse.
Sta a voi decidere cosa considerare una modifica che richiede ai client di aggiornare le cache. Vi consigliamo di richiedere un aggiornamento della cache in caso di modifiche significative ai vostri contenuti. Se avete aggiornato solo la data del copyright in fondo alla pagina, probabilmente non si tratta di una modifica importante.
ETag
e If-None-Match
I crawler di Google supportano le richieste condizionali basate su ETag
esattamente come definito nello
standard di memorizzazione nella cache HTTP.
In altre parole, per indicare la preferenza di memorizzazione nella cache ai crawler di Google, impostate il valore Etag
su qualsiasi
stringa ASCII arbitraria (di solito un hash dei contenuti o il numero di versione, ma potrebbe anche essere una
parte del pi greco, a voi la scelta) univoca per la rappresentazione dei contenuti ospitati dall'URL a cui si accede.
Ad esempio, se ospitate versioni diverse degli stessi contenuti nello stesso URL (ad esempio, versione mobile e desktop), ogni versione potrebbe avere un proprio valore ETag
univoco.
I crawler di Google che supportano la memorizzazione nella cache invieranno il valore ETag
restituito per una precedente scansione dell'URL in If-None-Match header
. Se il valore ETag
inviato dal crawler corrisponde al valore corrente generato dal server, il server deve
restituire un codice di stato HTTP 304
(Not modified) senza corpo HTTP. Quest'ultima parte, ovvero l'assenza di un corpo HTTP, è la parte importante per due motivi:
- il server non deve utilizzare risorse di calcolo per la generazione effettiva dei contenuti, il che ancora una volta comporta un risparmio in termini monetari
- il server non deve trasferire il corpo HTTP, il che comporta un risparmio in termini monetari
Su lato client, ad esempio nel browser di un utente o in Googlebot, i contenuti presenti a quell'URL vengono recuperati dalla cache interna del client. Poiché non è necessario trasferire dati, l'operazione avviene molto rapidamente, rendendo felici gli utenti e potenzialmente risparmiando anche alcune risorse.
Last-Modified
e If-Modified-Since
Analogamente a ETag
, i crawler di Google supportano anche le richieste condizionali Last-Modified based
, esattamente come definito nello standard HTTP Caching. Funziona allo stesso modo
di ETag
dal punto di vista semantico: un identificatore viene utilizzato per decidere
se la risorsa è memorizzabile nella cache e offre gli stessi vantaggi di ETag
su
lato client.
Ecco un paio di consigli se utilizzate Last-Modified
come istruzione di memorizzazione nella cache:
-
La data nell'intestazione
Last-Modified
deve essere formattata in base allo standard HTTP. Per evitare problemi di analisi, vi consigliamo di utilizzare il seguente formato della data: "Giorno della settimana, DD Mon YYYY HH:MM:SS fuso orario". Ad esempio, "Fri, 4 Sep 1998 19:15:56 GMT". -
Sebbene non sia obbligatorio, vi consigliamo di impostare anche il campo
max-age
dell'intestazioneCache-Control
per aiutare i crawler a determinare quando eseguire nuovamente la scansione dell'URL specifico. Impostate il valore del campomax-age
sul numero di secondi previsto per cui i contenuti rimangono invariati. Ad esempio,Cache-Control: max-age=94043
.
Esempi
Se siete come me, non è semplice comprendere bene come funziona la memorizzazione nella cache euristica, tuttavia può essere utile un esempio della catena di richieste e risposte. Ecco due catene, una per ETag
/If-None-Match
e una per Last-Modified
/If-Modified-Since
, per visualizzare come dovrebbe funzionare:
ETag /If-None-Match |
Last-Modified /If-Modified-Since |
|
---|---|---|
La risposta di un server a una scansione: si tratta della risposta da cui un crawler può salvare i campi di precondizione dell'intestazione ETag e Last-Modified .
|
HTTP/1.1 200 OK Content-Type: text/plain Date: Fri, 4 Sep 1998 19:15:50 GMT ETag: "34aa387-d-1568eb00" ... |
HTTP/1.1 200 OK Content-Type: text/plain Date: Fri, 4 Sep 1998 19:15:50 GMT Last-Modified: Fri, 4 Sep 1998 19:15:56 GMT Cache-Control: max-age=94043 ... |
Richiesta condizionale del crawler successiva: la richiesta condizionale si basa sui valori delle intestazioni della precondizione salvati da una richiesta precedente. I valori vengono inviati nuovamente al
server per la convalida nelle intestazioni della richiesta If-None-Match e If-Modified-Since .
|
GET /hello.world HTTP/1.1 Host: www.example.com Accept-Language: en, hu User-Agent: Googlebot/2.1 (+http://www.google.com/bot.html) If-None-Match: "34aa387-d-1568eb00" ... |
GET /hello.world HTTP/1.1 Host: www.example.com Accept-Language: en, hu User-Agent: Googlebot/2.1 (+http://www.google.com/bot.html) If-Modified-Since: Fri, 4 Sep 1998 19:15:56 GMT ... |
Risposta del server alla richiesta condizionale: poiché i valori delle intestazioni della precondizione inviati dal crawler vengono convalidati lato server, il server restituisce al crawler un codice di stato HTTP 304 (senza un corpo HTTP). Questo accade a ogni richiesta successiva fino a quando le precondizioni non vengono convalidate (la data di ETag o Last-Modified cambia su lato server).
|
HTTP/1.1 304 Not Modified Date: Fri, 4 Sep 1998 19:15:50 GMT Expires: Fri, 4 Sep 1998 19:15:52 GMT Vary: Accept-Encoding If-None-Match: "34aa387-d-1568eb00" ... |
HTTP/1.1 304 Not Modified Date: Fri, 4 Sep 1998 19:15:50 GMT Expires: Fri, 4 Sep 1998 19:15:51 GMT Vary: Accept-Encoding If-Modified-Since: Fri, 4 Sep 1998 19:15:56 GMT ... |
Se il vostro obiettivo è rendere felici i vostri utenti e magari volete anche risparmiare qualche euro sulla fattura dell'hosting, rivolgetevi al vostro provider di hosting o CMS o ai vostri sviluppatori per sapere come attivare la memorizzazione nella cache HTTP per il sito. Se non altro, gli utenti vi apprezzeranno un po' di più.
Se volete parlare di memorizzazione nella cache, rivolgetevi alla community di assistenza di Search Central più vicina e, se avete commenti sulle nostre modalità di memorizzazione nella cache, lasciate un feedback sulla documentazione relativa alla memorizzazione nella cache che abbiamo pubblicato insieme a questo post del blog.
Vuoi saperne di più sulla scansione? Dai un'occhiata all'intera serie "Dicembre dedicato alla scansione":
Search Central Live arriva a New York
Giovedì 13 febbraio 2025 Siamo felici di annunciare che Search Central Live si terrà a New York per la prima volta il 20 marzo 2025. Il team della Ricerca Google ha organizzato diversi eventi qui, ma questa volta porteremo il nostro evento principale
Riepilogo di Search Central Live Kuala Lumpur e Taipei 2024
Venerdì 13 dicembre 2024 Gli eventi Search Central Live di Kuala Lumpur e Taipei sono stati davvero fantastici, in gran parte grazie alle oltre 600 persone che hanno partecipato. È stato grandioso vedere questo livello di entusiasmo e coinvolgimento
Unitevi a noi per Search Central Live a Zurigo!
Mercoledì 20 novembre 2024 Vi invitiamo a partecipare a Search Central Live Zurigo 2024 il 12 dicembre 2024 presso la sede di Google a Zurigo. Non vediamo l'ora di incontrarvi per una serie di presentazioni dei team che lavorano alla Ricerca Google.
È terminata Search Central Live a Giacarta e Bangkok 2024
Martedì 15 ottobre 2024 I nostri primi due eventi Search Central Live in Asia di quest'anno sono terminati e abbiamo esaminato ciò che abbiamo imparato e cosa possiamo fare meglio. Il 25 luglio 2024, siamo stati lieti di ospitare 335 persone a
Search Central Live 2024 torna nella regione APAC
Mercoledì 29 maggio 2024 Search Central Live sta tornando nella regione Asia Pacifico, offrendovi approfondimenti dalla Ricerca Google, divertenti opportunità di networking e altro ancora. Quest'anno intendiamo recarci in Indonesia, Malaysia, Taiwan
Search Central Live 2024 a Varsavia, in Polonia
Lunedì 25 marzo 2024 Siamo lieti di annunciare un evento Search Central Live a Varsavia, in Polonia, il 24 aprile 2024. Search Central Live è la nostra serie di eventi globali sulla Ricerca Google pensati appositamente per proprietari di siti,
Search Central Live 2024 a Bucarest, Romania
Lunedì 4 marzo 2024 Siamo lieti di annunciare un evento Search Central Live a Bucarest, in Romania, il 4 aprile 2024. Search Central Live è la nostra serie di eventi globali sulla Ricerca Google pensati appositamente per proprietari di siti,
Search Central Live Singapore 2023
Mercoledì 18 ottobre 2023 Siamo lieti di annunciare che Search Central Live Singapore torna quest'anno il 22 novembre. Come al solito, l'evento è ospitato dal team della Ricerca Google, e non vediamo l'ora di riunire la community per imparare,
Search Central Live Zurigo è tornato!
Venerdì 29 settembre 2023 Siamo felici di annunciare che Search Central Live tornerà a Zurigo martedì 24 ottobre 2023. Dopo il nostro ultimo evento Search Central Live tenutosi a Zurigo nel dicembre 2019, siamo di ritorno per altre presentazioni,
Search Central Live arriva in India
Giovedì 17 agosto 2023 Con tre eventi Search Central Live già portati a termine quest'anno, è giunto il momento di annunciare quello che ci viene chiesto con maggiore insistenza: Search Central Live India. Stiamo arrivando da voi in due location: Vi
Search Central Live a Tokyo e Giacarta: è stato un successo
Giovedì 27 luglio 2023 È passato circa un mese dalla conclusione di Search Central Live di Tokyo e circa due settimane da Search Central Live di Giacarta. Ripensare a questi eventi ci rende felici: è fantastico ritrovarci di presenza e incontrare
Il meglio del 2022 di Search Central Live
Venerdì 6 dicembre 2022 Abbiamo trascorso le ultime settimane impegnati ( ed entusiasti, ovviamente ) a organizzare gli eventi di Search Central Live a Singapore e Tel Aviv. Ci siete mancati dalla nostra ultima Webmaster Conference all'inizio del
Un grande ritorno: gli eventi di Search Central Live
Giovedì 13 ottobre 2022 Nel 2019 abbiamo organizzato gli eventi Webmaster Conference per proprietari di siti ed esperti SEO in più di 15 paesi, in particolare in regioni in cui in genere non vengono organizzate simili conferenze. Poi abbiamo dovuto
Search Central Live is returning to Brazil in 2025
Wednesday, January 15, 2025 We're excited to announce that Search Central Live is returning to São Paulo in 2025. Following our successful events in 2023 and 2024, we're continuing our mission to help Brazilian businesses enhance their site's
Search Central Live 2024 is coming to Kuala Lumpur and Taipei
Tuesday, Aug 27, 2024 As previously announced, Search Central Live is coming to Kuala Lumpur and to Taipei in the last quarter of 2024. And yes, we're very excited! What can you expect? A whole day of learning about Search while having some fun along
Search Central Live Bangkok 2024
Thursday, June 20, 2024 We're coming back to Thailand with Search Central Live! As mentioned in our blog post about our APAC plans for SCL, we now have a date and a site where you can sign up for a chance to secure your spot at Search Central Live
Announcing Search Central Live Argentina
Thursday, February 1, 2024 We're excited to announce that Search Central Live is coming to Buenos Aires on March 5, 2024. Following successful events throughout the world last year, we're continuing our mission to help website owners to enhance their
Search Central Live is returning to Brazil
Thursday, February 1, 2024 We're excited to announce that Search Central Live is returning to São Paulo. Following our successful events last year, we're continuing our mission to help Brazilian businesses enhance their site's performance in Google
Traditional Chinese Blog: Search Central Live Taipei 2023
Thursday, November 2, 2023 We are ecstatic to announce that for the first time ever, Search Central Live is coming to Taipei! Part of the Search Central Live events series, this is the first in-person event we are organizing in Taiwan, and we're
Announcing the Search Central Live Mexico roadshow
Wednesday, September 20, 2023 We're very excited to announce that Search Central Live is coming to Ciudad de México on November 7! Following successful events throughout the world earlier this year, we're continuing our mission to help you enhance
Indonesian Blog: Search Central Live Jakarta 2023
Wednesday, June 7, 2023 A few weeks back, we announced that Search Central Live is coming to a few locations in Asia Pacific throughout 2023. If you speak Indonesian fluently and are interested, Search Central Live Jakarta 2023 is happening on July
Search Central Live: Tokyo and future plans for APAC
Tuesday, May 16, 2023 Search Central Live is back in Asia Pacific throughout 2023 and we can’t wait to meet you in person! In November 2022 we resumed our search event series with SCL Singapore. Encouraged by the success of the event, we're now ready
Announcing the Search Central Live Brazil roadshow
Monday, February 6, 2023 We're very excited to announce that Search Central Live is coming to Brazil! Following our successful events last year, we're continuing our mission to help you enhance your site's performance in Google Search. We're