Come configurare Redis Object Cache per velocizzare WordPress
Ogni volta che WordPress carica una pagina, esegue decine di query al database per recuperare opzioni, dati dei plugin, metadati e contenuti. Il Redis Object Cache riduce drasticamente queste query memorizzando i risultati in memoria RAM, così WordPress non deve interrogare il database per ogni richiesta. In questa guida ti spiego come funziona e come configurarlo.
Cos’è Redis e come funziona con WordPress
Redis è un database in-memory che funziona come una cache ultra-veloce. I dati vengono memorizzati nella RAM del server invece che su disco, rendendo l’accesso migliaia di volte più veloce rispetto a MySQL. WordPress ha un sistema di Object Cache integrato che, per default, mantiene i dati in memoria solo per la durata della singola richiesta. Con Redis, questi dati persistono tra le richieste, eliminando query ripetitive al database.
Il risultato è un sito significativamente più veloce, specialmente per:
- Siti con molti plugin: ogni plugin salva opzioni nel database. Con Redis, queste vengono lette dalla RAM.
- WooCommerce: le pagine del negozio eseguono molte query per prodotti, prezzi e carrello.
- Siti ad alto traffico: Redis riduce il carico sul database, permettendo di gestire più visitatori contemporaneamente.
- Bacheca di amministrazione: la dashboard WordPress diventa molto più reattiva.
Verificare se il tuo hosting supporta Redis
Redis deve essere installato sul server. Non tutti gli hosting lo supportano:
- Hosting gestiti premium (Kinsta, WP Engine, Cloudways): Redis è disponibile, spesso incluso nel piano o attivabile con un clic.
- VPS e server dedicati: puoi installare Redis manualmente.
- Hosting condivisi: la maggior parte non supporta Redis. Verifica con il tuo provider.
Per verificare se Redis è già installato sul server, accedi via SSH e digita:
redis-cli ping
Se ricevi la risposta PONG, Redis è installato e funzionante. Se ricevi un errore, Redis non è disponibile.
Installare Redis su un VPS
Se hai un VPS con Ubuntu/Debian, installa Redis con:
sudo apt update sudo apt install redis-server
Dopo l’installazione, Redis si avvia automaticamente. Verifica che funzioni con redis-cli ping. Per sicurezza, assicurati che Redis ascolti solo su localhost modificando /etc/redis/redis.conf:
bind 127.0.0.1 protected-mode yes
Riavvia Redis con sudo systemctl restart redis dopo le modifiche.
Installare il plugin Redis Object Cache
Una volta che Redis è attivo sul server, devi collegare WordPress ad esso:
- Installa il plugin Redis Object Cache di Till Kruss dalla bacheca WordPress.
- Aggiungi questa riga nel file wp-config.php, prima della riga “That’s all, stop editing!”:
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
- Vai in Impostazioni → Redis nella bacheca WordPress.
- Clicca su Enable Object Cache.
Il plugin crea un file object-cache.php nella cartella wp-content/ che sostituisce l’object cache predefinito di WordPress con Redis.
Configurazione avanzata
Per siti con esigenze specifiche, puoi personalizzare la configurazione in wp-config.php:
// Prefisso per evitare conflitti se più siti usano lo stesso Redis
define('WP_REDIS_PREFIX', 'miosito_');
// Timeout di connessione in secondi
define('WP_REDIS_TIMEOUT', 1);
// Tempo massimo di lettura in secondi
define('WP_REDIS_READ_TIMEOUT', 1);
// Database Redis (0-15, utile per separare i siti)
define('WP_REDIS_DATABASE', 0);
Se gestisci più siti WordPress sullo stesso server, usa un database Redis diverso o un prefisso diverso per ciascuno. Altrimenti le cache dei siti si mescolano.
Verificare che Redis funzioni
Dopo l’attivazione, verifica che Redis stia effettivamente memorizzando i dati:
Dalla bacheca: vai in Impostazioni → Redis. Dovresti vedere lo stato “Connected” e le statistiche su hit e miss della cache.
Da riga di comando:
redis-cli info stats | grep keyspace redis-cli info memory | grep used_memory_human
Il primo comando mostra quante chiavi sono memorizzate. Il secondo mostra quanta memoria sta usando Redis. Se i valori crescono dopo aver navigato il sito, Redis sta funzionando.
Puoi anche monitorare le operazioni in tempo reale con:
redis-cli monitor
Questo comando mostra ogni operazione Redis in tempo reale. Naviga il sito e vedrai le letture e scritture nella cache.
Redis vs Memcached: quale scegliere
Un’alternativa a Redis è Memcached. Entrambi sono cache in-memory, ma ci sono differenze:
- Redis supporta strutture dati complesse, persistenza su disco e replicazione. È più versatile.
- Memcached è più semplice e può essere leggermente più veloce per cache semplici.
Per WordPress, Redis è la scelta consigliata perché il plugin Redis Object Cache è più maturo, meglio mantenuto e offre più funzionalità di monitoraggio.
Serve assistenza?
Se vuoi configurare Redis Object Cache sul tuo server per velocizzare WordPress, il team di SoccorsoWP può installare e configurare tutto per te. Apri un ticket e migliora le prestazioni del tuo sito.