Come Impostare le Cache Rules di Cloudflare per WooCommerce Passo dopo Passo

Gestire un negozio online richiede velocità e massima precisione. Un e-commerce lento fa fuggire i clienti. Allo stesso tempo, un salvataggio aggressivo delle pagine può rompere il carrello. Se memorizzi la sessione sbagliata, mostri i dati personali di un acquirente a un altro utente.

Per evitare disastri simili serve una configurazione solida a livello DNS e CDN. In questo tutorial vediamo come configurare le Cache Rules di Cloudflare per WooCommerce. Scoprirai le regole esatte per blindare carrello, cassa e account personale senza rinunciare a prestazioni fulminee.

Questa guida rappresenta un approfondimento verticale del nostro hub. Ti consigliamo di leggere anche la guida su come configurare plugin caching WooCommerce senza errori per sincronizzare il server con la rete CDN.

Perché la cache edge può danneggiare WooCommerce

Cloudflare dispone di server edge distribuiti in tutto il mondo. Questi server memorizzano copie statiche dei tuoi file HTML, CSS e JavaScript. Quando un utente visita il sito, riceve i dati dal server edge più vicino. Questo meccanismo riduce drasticamente il tempo di risposta.

La natura dinamica di un negozio online

Un blog mostra a tutti gli stessi articoli. Un negozio online invece genera contenuti su misura per ogni acquirente. Ogni cliente possiede un carrello univoco. Inoltre, la cassa calcola imposte e spedizioni in base all’indirizzo inserito. Se memorizzi nella CDN queste chiamate, il sistema collassa.

Gli utenti potrebbero vedere prodotti aggiunti da sconosciuti. Nei casi peggiori, la procedura di pagamento si blocca. Le transazioni falliscono e perdi vendite preziose. Per scongiurare questo pericolo devi creare regole di esclusione chirurgiche.

La differenza tra vecchie Page Rules e nuove Cache Rules

In passato Cloudflare utilizzava le Page Rules. Questo strumento storico consentiva fino a tre regole gratuite. Le condizioni di attivazione erano tuttavia molto rigide e limitate ai soli percorsi URL.

Oggi Cloudflare ha introdotto il motore avanzato Cache Rules. La nuova interfaccia offre filtri basati su intestazioni HTTP, cookie e metodi di richiesta. Grazie a questa flessibilità puoi creare regole personalizzate ad alta precisione. Implementare le Cache Rules di Cloudflare per WooCommerce garantisce una separazione totale tra pagine statiche e dati dinamici.

Preparativi essenziali prima della configurazione

Prima di toccare le impostazioni nel pannello Cloudflare servono alcune verifiche preliminari sul tuo hosting WordPress. Lavorare con ordine previene errori imprevisti durante la navigazione.

Verifica del proxy attivo su Cloudflare

Accedi alla dashboard di Cloudflare. Seleziona il tuo dominio e clicca sulla voce DNS dal menu laterale sinistro. Controlla i record principali associati al tuo negozio (solitamente il record A per il dominio radice e il record CNAME per www).

L’icona della nuvola deve essere rigorosamente arancione. La dicitura deve indicare Proxied. Se la nuvola è grigia, il traffico passa direttamente al server di origine. In quella situazione le regole di caching non produrranno alcun effetto sul traffico in ingresso.

Identificazione dei cookie critici di WooCommerce

WooCommerce fa affidamento su specifici cookie per tracciare le sessioni dei clienti. I tre cookie fondamentali sono:

  • woocommerce_items_in_cart: segnala la presenza di articoli nel carrello.
  • woocommerce_cart_hash: memorizza una stringa identificativa dei prodotti scelti.
  • wp_woocommerce_session_: gestisce la sessione temporanea dell’utente sul server.
  • wordpress_logged_in_: identifica gli utenti autenticati nel pannello o nell’area personale.

Se uno qualsiasi di questi cookie è presente nel browser, la CDN non deve memorizzare la risposta HTML. Deve invece inoltrare la richiesta direttamente a PHP sul server.

Avviso operativo: prima di attivare qualsiasi regola di esclusione, attiva la modalità di sviluppo in Cloudflare. In questo modo svuoterai istantaneamente i file temporanei ed eviterai discrepanze durante i test.

Guida Passo dopo Passo: Creare le Cache Rules

Entriamo ora nella fase operativa. Vediamo la sequenza dettagliata per impostare tre regole fondamentali. Questa architettura proteggerà le transazioni e aumenterà la velocità del catalogo.

Regola 1: Bypass totale per le pagine istituzionali di WooCommerce

La prima regola disattiva qualsiasi memorizzazione edge sulle pagine operative dell’e-commerce. Segui attentamente questi passaggi:

  1. Nel menu a sinistra di Cloudflare clicca su Caching e poi su Cache Rules.
  2. Clicca sul pulsante azzurro Create rule.
  3. Assegna un nome chiaro alla regola, ad esempio: Bypass WooCommerce Core Pages.
  4. Nella sezione When incoming requests match imposta il selettore su Custom filter expression.
  5. Costruisci l’espressione inserendo il campo URI Path.

Seleziona l’operatore starts with e inserisci i percorsi riservati:

  • /carrello/ (oppure /cart/ in base alla lingua)
  • /cassa/ (oppure /checkout/)
  • /mio-account/ (oppure /my-account/)
  • /wp-admin/
  • /wp-login.php

Nel campo successivo imposta l’azione Cache eligibility su Bypass cache. Clicca su Deploy per salvare la configurazione.

Regola 2: Bypass dinamico basato sui Cookie di sessione

La seconda regola serve per proteggere gli utenti che navigano nel catalogo dopo aver inserito un prodotto nel carrello. Se non crei questa regola, l’icona del carrello nell’header rischia di rimanere vuota.

Crea una nuova regola e chiamala Bypass Cache for Active Shoppers. Imposta il filtro personalizzato con queste caratteristiche:

Seleziona il campo Cookie, l’operatore matches regex e inserisci l’espressione regolare:

(woocommerce_items_in_cart|woocommerce_cart_hash|wp_woocommerce_session_|wordpress_logged_in_)

Se il tuo piano Cloudflare gratuito non supporta le espressioni regolari (regex), non preoccuparti. Puoi usare l’operatore contains combinando le condizioni con la clausola OR:

  • Cookie contains woocommerce_items_in_cart OR
  • Cookie contains woocommerce_cart_hash OR
  • Cookie contains wordpress_logged_in_

Imposta anche qui l’azione Cache eligibility su Bypass cache. Con questa impostazione, non appena un utente aggiunge un prodotto, Cloudflare esclude le regole di cache Cloudflare per e-commerce standard e richiede sempre l’HTML aggiornato al server.

Regola 3: Caching aggressivo per visitatori anonimi e risorse statiche

Ora che il carrello è al sicuro, possiamo velocizzare la navigazione per tutti i nuovi visitatori. I visitatori anonimi rappresentano spesso l’80% del traffico totale di uno shop.

Crea una terza regola chiamata Cache HTML for Guests. Imposta i seguenti parametri:

  1. URI Path does not start with /wp-admin/
  2. AND URI Path does not start with /carrello/
  3. AND URI Path does not start with /cassa/
  4. AND Cookie does not contain woocommerce_items_in_cart
  5. AND Cookie does not contain wordpress_logged_in_

Nella sezione delle azioni imposta Cache eligibility su Eligible for cache. Più in basso, nella sezione Edge TTL, scegli l’opzione Override origin e imposta una durata di 4 o 8 ore. Configurare correttamente le Cache Rules di Cloudflare per WooCommerce su questi valori alleggerisce il carico della CPU del server fino al 70%.

Risoluzione dei problemi e collaudo dell’architettura

Dopo aver salvato le modifiche, non dare mai per scontato che tutto funzioni senza errori. Il collaudo pratico è un passaggio obbligato per verificare il comportamento della rete.

Come verificare gli Header HTTP con gli strumenti per sviluppatori

Apri una finestra in incognito su Google Chrome o Mozilla Firefox. Apri gli Strumenti per sviluppatori premendo il tasto F12 e spostati sulla scheda Network (Rete).

Carica la home page del tuo shop. Clicca sulla prima richiesta dell’elenco (il documento HTML principale) e controlla la sezione degli Header di risposta:

  • cf-cache-status: HIT significa che la pagina è stata servita istantaneamente dalla cache di Cloudflare.
  • cf-cache-status: MISS indica che la pagina è stata recuperata dal server e ora si trova in cache.
  • cf-cache-status: BYPASS conferma che la regola ha intercettato la richiesta escludendola dalla cache.

Aggiungi adesso un prodotto al carrello e naviga nuovamente verso la home page. Ricarica la scheda Rete: l’header cf-cache-status deve mostrare tassativamente BYPASS. Se visualizzi ancora HIT, il cookie non viene letto correttamente dalla regola.

Gestione del frammento carrello via AJAX

WooCommerce usa uno script chiamato cart-fragments. Questo script aggiorna il mini-carrello tramite una richiesta AJAX in background. Se il carrello mostra conteggi errati, assicurati che la cartella /wp-json/ e il file /wp-admin/admin-ajax.php non vengano mai bloccati o memorizzati in cache.

Le nostre regole escludono automaticamente la cartella di amministrazione. Di conseguenza anche le chiamate asincrone rimangono protette da interferenze.

Consigli avanzati per ottimizzare i file statici

Oltre alle pagine HTML, un negozio digitale carica centinaia di immagini, fogli di stile e script. Ottimizzare questi asset riduce i tempi di caricamento da mobile.

Impostazione del Browser Cache TTL

Nella scheda Caching > Configuration imposta il parametro Browser Cache TTL su almeno 1 mese. I file statici come loghi, font tipografici e icone non cambiano frequentemente. I browser dei clienti li salveranno in locale evitando download ripetuti.

Ottimizzazione delle immagini con Polish o plugin dedicati

Le immagini pesanti rallentano il punteggio nei Core Web Vitals. Se possiedi Cloudflare Pro puoi attivare la funzione Polish per convertire i file in formato WebP al volo. In alternativa, puoi affidarti a plugin gratuiti su WordPress per comprimere i file JPEG prima del caricamento sulla CDN.

Domande Frequenti (FAQ)

Cosa succede se un utente visualizza il carrello di un altro cliente?

Questo accade quando il server o Cloudflare memorizzano la pagina del carrello restituendola con stato di cache HIT. Significa che la richiesta ha saltato i controlli dinamici. Per risolvere immediatamente, accedi a Cloudflare, vai su Caching e clicca su Purge Everything. Dopodiché verifica la sintassi della regola di bypass e accertati che il percorso del carrello sia escluso al 100%.

Posso usare contemporaneamente WP Rocket e Cloudflare?

Assolutamente sì. La combinazione tra WP Rocket e Cloudflare è tra le più efficienti sul mercato. WP Rocket si occupa del caching a livello server, del minifying dei file e del lazy load delle immagini. Cloudflare distribuisce invece i file sul network globale. Assicurati soltanto di disattivare il caching HTML edge su Cloudflare per le pagine dinamiche se riscontri conflitti nei cookie.

Le Cache Rules gratuite sono sufficienti per uno store WooCommerce?

Sì, il piano gratuito di Cloudflare include fino a 10 Cache Rules. Questo quantitativo è ampiamente sufficiente per gestire un negozio online standard. Puoi creare una regola per escludere l’area carrello, una per i cookie di sessione e una terza per velocizzare il catalogo anonimo, mantenendo ancora regole disponibili per future esigenze.

Articoli simili