Panoramica

Google AMP Cache pubblica copie cache di contenuti AMP validi pubblicati sul Web. Pubblica contenuti direttamente dalla Google AMP Cache per offrire un'esperienza utente rapida.

Per utilizzare Google AMP Cache, è necessario accedere a un URL AMP direttamente dalla cache utilizzando il formato AMP Cache URL. Ogni volta che un utente accede a contenuti AMP dalla cache, i contenuti vengono aggiornati automaticamente e la versione aggiornata viene pubblicata per l'utente successivo una volta che i contenuti sono stati memorizzati nella cache.

Formato dell'URL della cache AMP

Il formato dell'URL della cache AMP è costituito dai seguenti componenti:

Componente Descrizione
Nome del sottodominio

I sottodomini creati da Google AMP Cache saranno leggibili quando i limiti di caratteri e le specifiche tecniche lo consentiranno e saranno molto simili al dominio del publisher. Quando possibile, la cache di Google AMP crea ogni sottodominio nei seguenti modi:

  1. Conversione del dominio documento AMP da IDN (Punycode) a UTF-8.
  2. Sostituisci ogni "-" (trattino) con "--"(2 trattini).
  3. Sostituisci ogni "." (punto) con un "-" (trattino).
  4. Conversione in IDN (Punycode) in corso...

Ad esempio, pub.com verrà associato a pub-com.cdn.ampproject.org. Nei casi in cui le limitazioni tecniche impediscono un sottodominio leggibile, verrà utilizzato un hash unidirezionale.

Tipo di contenuti Il tipo di contenuti è uno dei seguenti: 'c' per un documento HTML AMP, 'i' per un'immagine o 'r' per una risorsa come un carattere. La cache AMP di Google restituisce un errore 404 per le risorse che non corrispondono a questi tipi di contenuti (vedi l'errore principale).
's' (Facoltativo) Se presente, richiede che Google recuperi i contenuti dall'origine utilizzando TLS (HTTPS sicuro). Se il simbolo 's' non è presente, i contenuti vengono recuperati dall'origine utilizzando il semplice HTTP.
URI URI dei contenuti da recuperare. L'URI non può contenere uno schema, ovvero non può essere "http://" o "https://".

Trovare il nome del sottodominio

In genere, il nome del sottodominio per l'URL di Google AMP Cache sarà una conversione leggibile dell'URL originale utilizzando la procedura descritta sopra. Tuttavia, poiché potrebbero verificarsi casi in cui questa situazione potrebbe non essere vera, il modo migliore per recuperare gli URL della cache AMP di Google per le applicazioni pronte per la produzione consiste nell'utilizzare l'API Google AMP Cache URL.

Per situazioni non di produzione, per determinare il nome del sottodominio generato dalla Google AMP Cache, prova lo strumento interattivo Utilizzo di Google AMP Cache su amp.dev.

Esempio di richiesta di un documento con TLS

Richiesta di un documento HTML AMP (specificato con il prefisso /c) recuperato da https://example.com/amp_document.html:

https://example-com.cdn.ampproject.org/c/s/example.com/amp_document.html

Poiché /s segue il prefisso /c, il documento verrà recuperato da example.com usando TLS.

Esempio di richiesta di immagine tramite HTTP semplice

Richiesta di un'immagine (specificata con il prefisso /i) recuperata da http://example.com/logo.png:

https://example-com.cdn.ampproject.org/i/example.com/logo.png

Poiché non esiste un /s dopo il prefisso /i, Google recupera l'immagine da example.com utilizzando HTTP semplice, non HTTP tramite TLS.

Esempio di parametro di ricerca

Il formato degli URL della cache AMP può anche includere parametri nella stringa di query. Di seguito è riportato un esempio di HTTPS con i parametri: https://example-com.cdn.ampproject.org/c/s/example.com/g?value=Hello%20World

Aggiornamenti della cache AMP di Google

Quando un utente richiede un documento AMP da Google AMP Cache, la cache richiede automaticamente gli aggiornamenti per poter pubblicare contenuti aggiornati per l'utente successivo una volta che i contenuti sono stati memorizzati nella cache. Con questo modello, gli aggiornamenti ai documenti AMP si propagano automaticamente e rapidamente. Alcuni utenti vedranno la versione non aggiornata dopo l'aggiornamento.

La cache segue un modello "stale-while-revalidate&quo;. Utilizza le intestazioni di memorizzazione nella cache dell'origine, come Max-Age, come suggerimenti per decidere se un documento o una risorsa specifici sono inattivi. Quando un utente invia una richiesta non aggiornata, la richiesta recupera una nuova copia, in modo che l'utente successivo riceva contenuti nuovi.

Per limitare la quantità di carico che genera per i siti dei publisher, Google Cache considera qualsiasi documento aggiornato per almeno 15 secondi e qualsiasi risorsa aggiornata per almeno un minuto. Tenete presente che questi numeri potrebbero cambiare in futuro man mano che perfezionamo la cache per ottenere un equilibrio ottimale tra l'aggiornamento e il caricamento sui siti dei publisher.

Ottimizzazioni e modifiche della cache

La Google AMP Cache esegue ottimizzazioni e modifiche, ad esempio:

  • Convalida i contenuti effettivamente in formato AMP, soddisfacendo tutti gli obiettivi di rendimento di AMP.
  • Memorizza nella cache immagini e caratteri, oltre ai documenti AMP.
  • Limita le dimensioni massime delle immagini per evitare problemi di memoria del browser e scarsa reattività.
  • Varie trasformazioni per migliorare l'efficienza di distribuzione delle immagini tramite il tag amp-img, ad esempio:
    • Rimozione di dati invisibili o difficili da vedere, come determinati metadati.
    • Conversione di immagini in formati immagine più piccoli e ottimizzati per i dispositivi mobili, come la conversione di immagini in formato GIF, PNG e JPEG in WebP nei browser che supportano WebP.
    • Trasformazione dell'immagine a una qualità inferiore se la richiesta include l'intestazione Save-Data.
    • Generazione di versioni di dimensioni alternative e aggiunta di attributi srcset per supportare la pubblicazione di immagini adattabili.
  • Utilizzano un canale protetto (HTTPS) e utilizzano i protocolli web più recenti (SPDY, HTTP/2).
  • Elimina i documenti AMP per impedire attacchi XSS basati su tag HTML, commenti e altro ancora chiusi erroneamente.

Nel corso delle trasformazioni precedenti, Google Cache ignora l'intestazione "Cache-Control: no-Transform".

Sanificazione HTML

Google AMP Cache riscrive tutti i documenti per normalizzare l'analisi. Ecco alcuni esempi:

  • Tutti i commenti HTML vengono rimossi.
  • I nomi dei tag e degli attributi sono minuscoli.
  • I valori degli attributi vengono racchiusi tra virgolette e con caratteri di escape in modo coerente.
  • Tutti i tag sono chiusi, ad eccezione degli elementi HTML5 void.
  • Gli spazi vuoti all'interno dei tag vengono rimossi.
  • Il testo contiene caratteri di escape.
  • I caratteri di testo codificati sono semplificati utilizzando caratteri UTF-8 equivalenti.
  • Gli elementi che possono essere solo nel body vengono spostati in body.
  • I link in uscita sono considerati assoluti in modo che continuino a funzionare quando il documento viene pubblicato dall'origine Google AMP Cache anziché dall'origine publisher.

Inserisci tag di precaricamento

Google AMP Cache aggiunge vari tag di suggerimento di precaricamento per i browser per agevolare il caricamento delle risorse in precedenza. Ad esempio, <link href='https://fonts.googleapis.com/css?family=Lato' rel='stylesheet’> cambia in:

<link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet">
<link href="https://fonts.gstatic.com" rel="dns-prefetch preconnect">