Bypass Cloudflare cache per area admin WordPress: configurazione
Quando si attiva una cache aggressiva su Cloudflare per accelerare un sito WordPress, è fondamentale escludere l'area admin da qualsiasi forma di caching. Senza questa esclusione si rischia: dashboard non aggiornata, problemi di login, sessioni miscelate tra utenti, plugin che non funzionano correttamente. La configurazione corretta combina Page Rules, Bypass on Cookie e accortezze sui pattern URL. Vediamo come farla in modo professionale.
Cosa includere nel bypass
I path da escludere obbligatoriamente sono: /wp-admin/ (dashboard amministrativa), /wp-login.php (pagina login), /xmlrpc.php (API XML-RPC), /wp-cron.php (cron interno). Inoltre vanno bypassate le richieste con cookie utente loggato: wordpress_logged_in_*, wp-postpass_*, woocommerce_* se attivo WooCommerce. La best practice combina bypass per path e per cookie per coprire entrambi i flussi.
Procedura passo-passo
- Vai sul dashboard Cloudflare e seleziona il dominio WordPress.
- Apri Rules → Page Rules.
- Crea regola 1: URL pattern *tuosito.it/wp-admin/*, Settings: Cache Level=Bypass, Disable Performance, Security Level=High.
- Crea regola 2: URL pattern *tuosito.it/wp-login.php*, Settings: Cache Level=Bypass, Disable Performance, Security Level=High.
- Crea regola 3: URL pattern *tuosito.it/xmlrpc.php*, Settings: Cache Level=Bypass.
- Posiziona queste regole in cima all'elenco (priorità più alta).
- Vai su Caching → Cache Rules e crea regola Bypass su cookie.
- Espressione: (http.cookie contains "wordpress_logged_in"), Action: Bypass cache.
- Salva e fai un test: login WordPress e verifica accesso dashboard senza problemi.
- Verifica con header CF-Cache-Status: BYPASS nei DevTools.
Cache by cookie avanzata
Le Page Rules tradizionali hanno opzione Bypass Cache on Cookie dove inserisci pattern come wordpress_logged_in_.*|wp-postpass_.*|comment_.*. Le nuove Cache Rules hanno sintassi più potente con linguaggio espressivo. Esempio: (http.cookie contains "wordpress_logged_in") or (http.cookie contains "woocommerce_cart_hash") or (http.cookie contains "comment_author"). La cache rule ha priorità sulla page rule per le decisioni di cache.
WooCommerce: bypass aggiuntivi
Su siti WooCommerce occorre estendere il bypass: /cart/, /checkout/, /my-account/ devono essere sempre Bypass. I cookie woocommerce_cart_hash, woocommerce_items_in_cart, wp_woocommerce_session_* indicano sessione utente attiva e devono triggerare bypass. Se vendi prodotti digitali con download, anche i path di download personalizzati vanno bypassati. APO for WordPress include queste regole se attivato.
Errori comuni e come risolverli
- Login loop infinito: i cookie sono cachati. Forza bypass aggressivo su wp-login.php e on cookie.
- Dashboard mostra dati di altri admin: cache HTML cross-user attiva. Bypass on cookie obbligatorio.
- Plugin updates falliscono: bypass su /wp-admin/ mancante. Aggiungi regola.
- REST API risposte cachate: aggiungi /wp-json/* a bypass.
- Cookie not sent: il client non manda cookie. Verifica SameSite e secure flag.
Plugin che aiutano
Il plugin ufficiale Cloudflare imposta automaticamente le best practice per cache bypass. Anche WP Cloudflare Super Page Cache e Super Page Cache for Cloudflare automatizzano la configurazione con interfaccia user-friendly. Per chi non vuole gestire manualmente Page Rules, questi plugin sono il modo più semplice per ottenere una configurazione corretta out-of-the-box.
Test e verifica
Dopo aver configurato il bypass: 1) apri /wp-admin/ da incognito e fai login: deve funzionare istantaneamente. 2) Controlla che dopo login l'header CF-Cache-Status sia BYPASS o DYNAMIC. 3) Pubblica un post e verifica che appaia nell'archive senza dover purgare. 4) Da utente loggato visita la home: il content deve essere fresh. 5) Da utente anonimo la home deve essere HIT (cache hit).
Domande frequenti
D: Posso usare cache HTML aggressiva con utenti loggati?
R: Sì se hai bypass on cookie corretto. Anonimo cachato, loggato bypass.
D: APO gestisce automaticamente questo?
R: Sì, APO ha bypass preconfigurato per WordPress.
D: Bypass su /wp-admin/* basta?
R: No, serve anche bypass on cookie per pagine frontend visitate da admin.
D: La cache rule ha priorità sulla page rule?
R: Per cache decisions sì. Le altre impostazioni restano nella page rule.
Considerazioni operative finali
Quando applichi una configurazione di questo tipo in produzione è sempre buona norma seguire un'approccio incrementale: parti con un test su staging, monitora gli effetti per qualche giorno, poi estendi gradualmente al traffico live. La rete Cloudflare elabora ogni cambiamento in pochi secondi a livello globale, quindi le modifiche sono effettive quasi immediatamente, ma gli effetti collaterali su utenti reali possono richiedere ore o giorni per emergere. Annota nel runbook interno data, motivo e parametri di ogni modifica significativa. Una documentazione precisa accelera enormemente il troubleshooting futuro e facilita il passaggio di consegne tra membri del team.
Vale anche la pena ricordare che Cloudflare aggiorna frequentemente l'interfaccia del dashboard e le posizioni delle voci di menu. La logica e le funzionalità descritte in questa guida restano valide, ma il percorso esatto per raggiungere ogni opzione può variare leggermente nel tempo. In caso di difficoltà a trovare una specifica voce, utilizza la barra di ricerca interna del dashboard oppure consulta la documentazione ufficiale aggiornata. La community Cloudflare sul forum ufficiale e su Stack Overflow è inoltre molto attiva e offre spesso risposte rapide a problemi specifici di configurazione.
Per progetti complessi che coinvolgono più servizi Cloudflare contemporaneamente (CDN, Workers, WAF, Access, R2) conviene strutturare la configurazione come codice tramite Terraform o Pulumi. Questo permette versioning, code review, rollback atomici e deploy ripetibili tra environment. Per team con esigenze più semplici la gestione manuale via dashboard resta perfettamente valida, soprattutto se accompagnata da una checklist scritta delle impostazioni applicate. La scelta dell'approccio dipende dalle dimensioni del progetto e dal grado di automazione desiderato. L'importante è essere consistenti e mantenere tracciabilità delle modifiche effettuate.
Hai bisogno di aiuto?
Se vuoi configurare Cloudflare per il tuo sito con il team di G Tech Group, scrivici tramite il modulo di contatto.