Come configurare la cache Redis per Nextcloud su Ubuntu 24.04

Il manuale di amministrazione di Nextcloud attualmente disponibile documenta ancora l'estensione PhpRedis per la memorizzazione nella cache Redis e il blocco transazionale dei file. Documenta anche un backend più recente, KeyValueCache, senza estensione, aggiunto in Nextcloud 34.0.2. Questa guida utilizza la configurazione PhpRedis consolidata perché Ubuntu 24.04 fornisce il pacchetto di estensione Redis per PHP 8.3. Il backend più recente è un'opzione disponibile se la versione di Nextcloud in uso lo supporta, ma le sue chiavi di configurazione sono diverse; non confondere i due esempi.

Il risultato sarà un servizio Redis locale disponibile solo sull'host Nextcloud, con cache distribuita e blocco dei file basati su Redis e APCu per una cache locale più veloce. Questa è una configurazione comune per server singoli. Se i server web e PHP sono distribuiti su host diversi, utilizzare un endpoint Redis condiviso con controlli di rete appropriati anziché le impostazioni localhost descritte di seguito.

Quali modifiche apporta Redis a un'installazione di Nextcloud?

Redis offre a Nextcloud un servizio chiave-valore per le voci di cache distribuite e i blocchi transazionali dei file. Questi blocchi aiutano a prevenire operazioni in conflitto quando più richieste accedono agli stessi file. Redis non sostituisce il database, l'archiviazione dei file, PHP OPcache o il piano di backup di Nextcloud. Su un singolo server, APCu è generalmente più veloce per la memorizzazione nella cache locale in-process, mentre Redis gestisce la cache e i blocchi condivisi. Nextcloud avverte inoltre che l'utilizzo di Redis come cache locale non è consigliato, soprattutto in presenza di più server web.

Il manuale più recente di Nextcloud identifica Redis come backend supportato e specifica PhpRedis 2.2.6 o versioni successive per il metodo basato su estensioni. L'archivio dei pacchetti di Ubuntu 24.04 include php8.3-redise redis-server. Le revisioni dei pacchetti possono cambiare con la pubblicazione degli aggiornamenti di Ubuntu, quindi installa dai repository di Ubuntu configurati anziché bloccare una versione copiata da una guida precedente. Riferimenti controllati il ​​6 ottobre 2026: documentazione sulla cache di memoria di Nextcloud , elenco dei pacchetti PhpRedis di Ubuntu 24.04 e elenco dei pacchetti del server Redis di Ubuntu 24.04 .

Prima di iniziare

  • Conferma la directory di installazione di Nextcloud e il runtime PHP utilizzato dal sito web. I comandi seguenti presuppongono un'installazione standard del pacchetto Ubuntu con PHP 8.3, Apache o PHP-FPM e l'account del servizio web www-data.
  • Esegui un backup config/config.phpe prendi nota di come ripristinarlo. Il percorso esatto varia: ad esempio, l'installazione di un pacchetto potrebbe utilizzare /var/www/nextcloud/config/config.php, mentre un'installazione manuale potrebbe trovarsi altrove.
  • Se il server gestisce caricamenti di file attivi, è necessario utilizzare una finestra di manutenzione. Il riavvio di Apache o PHP-FPM interrompe brevemente le richieste web.

1. Installa Redis, PhpRedis e APCu

Aggiorna i metadati del pacchetto e installa il demone e le estensioni PHP:

sudo apt update
sudo apt install redis-server php-redis php-apcu

Il pacchetto di Ubuntu php-redisseleziona l'estensione per la versione di PHP installata. Se gestisci più versioni di PHP o utilizzi un repository PHP di terze parti, verifica che l'estensione sia installata per la versione esatta di PHP in uso su Nextcloud. Un modulo abilitato solo per l'ambiente di runtime PHP da riga di comando non garantisce che Apache o PHP-FPM possano caricarlo.

Abilita Redis all'avvio del sistema e avvialo ora, quindi verifica lo stato del servizio:

sudo systemctl enable --now redis-server
sudo systemctl status redis-server --no-pager
redis-cli ping

Una risposta Redis locale sana all'ultimo comando è PONG. Se il servizio è inattivo, controlla sudo journalctl -u redis-server -n 50 --no-pagerprima di modificare la configurazione di Nextcloud.

2. Mantieni il listener Redis locale

Per un'installazione su un singolo host, Redis non ha bisogno di essere in ascolto su un'interfaccia pubblica. La configurazione predefinita di Ubuntu è normalmente progettata per l'accesso locale e la modalità protetta; si consiglia di verificarla /etc/redis/redis.confprima di modificarla.

sudo grep -E '^(bind|protected-mode|port|unixsocket)' /etc/redis/redis.conf

Mantieni Redis associato all'interfaccia di loopback (comunemente 127.0.0.1e ::1) e lascia la modalità protetta abilitata. Non esporre la porta 6379a Internet né associarla a 0.0.0.0per questa configurazione locale. Dopo qualsiasi modifica alla configurazione di Redis, riavvia il servizio e ripeti redis-cli ping.

Questa guida utilizza TCP su localhost per ridurre al minimo le modifiche ai permessi del socket. Un socket Unix è un'altra opzione locale supportata e può ridurre l'overhead di connessione, ma il percorso del socket Redis, la proprietà del gruppo, i permessi e la configurazione di Nextcloud devono corrispondere. Segui l'esempio di socket presente nel manuale di Nextcloud se scegli deliberatamente questa strada.

3. Conferma che PHP può caricare entrambe le estensioni

Verifica i moduli PHP da riga di comando:

php -m | grep -Ei '^(apcu|redis)$'

Dovresti vedere entrambi i nomi. Se uno dei due manca, controlla i file dei moduli abilitati php --inie installa il pacchetto corrispondente per la tua versione di PHP. Riavvia il gestore PHP utilizzato dal sito web in modo che i suoi worker carichino i nuovi moduli. Per Apache con mod_php, esegui sudo systemctl restart apache2. Per un'installazione PHP-FPM che utilizza PHP 8.3, esegui sudo systemctl restart php8.3-fpm; riavvia o ricarica il server web a seconda delle esigenze della tua distribuzione.

Il controllo tramite CLI è un primo segnale utile, ma non una prova completa del runtime web. Successivamente, utilizza le impostazioni di amministrazione di Nextcloud e la relativa visualizzazione delle informazioni sul server o sulle informazioni PHP per verificare che il processo web riconosca i moduli della cache.

4. Aggiungi le impostazioni della cache a Nextcloud

Apri il file esistente config/config.phpcon un editor. Esegui prima un backup del file e unisci queste voci all'array PHP esistente prima di chiuderlo );. Non sostituire l'intero file né aggiungere una seconda copia di chiavi già presenti.

'memcache.local' => '\OC\Memcache\APCu',
'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
    'host' => '127.0.0.1',
    'port' => 6379,
],

L'indirizzo di loopback esplicito corrisponde al servizio Redis locale. Se invece si utilizza un socket Unix, utilizzare il percorso del socket come host Redis e configurare il demone e le autorizzazioni di conseguenza. Se Redis richiede l'autenticazione, aggiungere il nome utente e la password ACL di Redis corretti all'array redise configurare Redis di conseguenza; non incollare mai una password reale in un esempio condiviso o in un post di supporto pubblico.

Mantieni invariate le impostazioni esistenti, come instanceidle credenziali del database, i domini attendibili e la directory dei dati. La sintassi degli array PHP è importante: mantieni le virgole tra le voci e assicurati che ogni impostazione appaia una sola volta.

5. Convalidare la cache e il blocco dei file

Eseguire il controllo dello stato da riga di comando di Nextcloud dalla directory di installazione come utente del servizio web. Sostituire il percorso di esempio se l'installazione si trova in un'altra posizione:

cd /var/www/nextcloud
sudo -u www-data php occ status

Controlla l'interfaccia web nelle impostazioni di amministrazione per eventuali avvisi di configurazione e verifica che i moduli Redis e APCu siano visibili al runtime PHP web. Quindi, testa le normali operazioni sui file con un file piccolo e non critico: caricalo, rinominalo, scaricalo ed eliminalo. La pagina di amministrazione non dovrebbe più segnalare l'assenza di una cache di memoria quando la cache locale è configurata correttamente.

Un test riuscito PONGdimostra solo che Redis risponde al client CLI locale. Il controllo amministrativo di Nextcloud e le operazioni di routine sui file aiutano a verificare contemporaneamente l'estensione PHP, i permessi del server web, le impostazioni di connessione a Redis e la configurazione dell'applicazione. Non considerare un caricamento più rapido della pagina durante un test come prova di un miglioramento misurabile delle prestazioni; il carico di lavoro, lo spazio di archiviazione, il database e la capacità dei worker PHP influiscono tutti sul tempo di risposta.

Risoluzione dei problemi comuni

La pagina di amministrazione continua a segnalare l'assenza di cache in memoria.

Verifica la presenza di chiavi di cache duplicate o con errori di battitura, conferma che memcache.localpuntino ad APCu e riavvia il servizio Apache o PHP-FPM corretto. Un'installazione PHP solo da riga di comando potrebbe essere diversa dal runtime PHP utilizzato dal sito web.

Redis è in esecuzione, ma Nextcloud segnala errori di connessione.

Confronta hoste portcon config.phpil listener in /etc/redis/redis.conf. Conferma l'accesso locale con redis-cli -h 127.0.0.1 -p 6379 pinge rivedi i log di Redis e del server web. Se utilizzi un socket o una password, verifica che il percorso o le credenziali corrispondano su entrambi i lati.

Le operazioni sui file non riescono dopo la modifica

Se l'istanza diventa inutilizzabile, ripristinate temporaneamente il backup config.php, quindi esaminate i log di PHP e del server web. Verificate la punteggiatura degli array, confermate che il servizio Redis sia attivo e assicuratevi che nessun firewall o ACL Redis personalizzato blocchi il processo web. Evitate di cancellare i dati di Redis come primo passaggio per la risoluzione dei problemi; esaminate la connessione e la configurazione prima di rimuovere le voci della cache o di blocco.

Cosa non copre questa configurazione

Questa è una configurazione a server singolo, non un'architettura Redis ad alta disponibilità. Non configura la replica di Redis, Sentinel, TLS, un host di cache remoto, l'archiviazione delle sessioni o una distribuzione Nextcloud in cluster. I nodi Nextcloud multi-server devono condividere la stessa cache distribuita e lo stesso backend di blocco; l'utilizzo di localhost su ciascun nodo creerebbe istanze Redis separate, vanificando tale requisito. Per una topologia remota o in cluster, seguire la sezione di configurazione di Nextcloud corrispondente e proteggere le comunicazioni Redis per tale ambiente.

Una volta stabilizzata la configurazione, monitora l'utilizzo della memoria di Redis e la panoramica di amministrazione di Nextcloud. Assegna memoria sufficiente per la cache e le attività di blocco, evita policy di eliminazione non verificate che potrebbero eliminare i dati di blocco e mantieni backup regolari del database e dei file. La cache di Redis può ridurre il sovraccarico dovuto alla cache e ai blocchi, ma è solo una parte di un'installazione Nextcloud efficiente, non un sostituto della pianificazione della capacità.

Lascia un commento

10 migliori strumenti di ping sweep per individuare i dispositivi sulla tua rete

10 migliori strumenti di ping sweep per individuare i dispositivi sulla tua rete

Confronta 10 strumenti di scansione ping per una rapida individuazione della rete LAN, la scansione multipiattaforma e la gestione degli indirizzi IP. Scopri cosa può (e non può) rivelarti una scansione.

6 migliori strumenti di gestione della rete per il monitoraggio delle prestazioni

6 migliori strumenti di gestione della rete per il monitoraggio delle prestazioni

Confronta sei strumenti di gestione della rete per il monitoraggio delle prestazioni, tra cui copertura SNMP, mappatura, avvisi, modelli di implementazione e compromessi in termini di costi.

Ping Monitor: 7 strumenti gratuiti e open-source per la disponibilità della rete

Ping Monitor: 7 strumenti gratuiti e open-source per la disponibilità della rete

Confronta sette monitor di ping gratuiti e open-source, da suite di rete complete a strumenti specifici per la misurazione della latenza, e scegli quello più adatto alle tue esigenze in termini di disponibilità, perdita di pacchetti e cronologia.

I migliori analizzatori Wi-Fi per Windows, iOS e Android

I migliori analizzatori Wi-Fi per Windows, iOS e Android

Confronta le migliori app di analisi Wi-Fi per Windows, iPhone e Android, inclusi strumenti per l'analisi della congestione dei canali, la copertura del segnale, le mappe di calore e la risoluzione dei problemi di rete.

QoS nelle reti: cos'è la qualità del servizio e come funziona

QoS nelle reti: cos'è la qualità del servizio e come funziona

Scopri cosa significa QoS nelle reti, come le marcature DSCP e le code di traffico danno priorità alle applicazioni voce, video e aziendali e cosa il QoS non può risolvere.

Il miglior software server SFTP per trasferimenti di file sicuri

Il miglior software server SFTP per trasferimenti di file sicuri

Confronta software server SFTP affidabili per Windows e Linux, tra cui OpenSSH, Bitvise, SolarWinds e SFTPGo. Trova la soluzione più adatta alle tue esigenze di sicurezza e trasferimento file.

I 7 migliori strumenti di gestione degli indirizzi IP per i team di rete

I 7 migliori strumenti di gestione degli indirizzi IP per i team di rete

Confronta sette strumenti di gestione degli indirizzi IP per la scoperta di sottoreti, il coordinamento di DNS e DHCP, l'inventario di rete e la gestione degli indirizzi IP open source.

Procedure ottimali per il monitoraggio della rete: cosa monitorare e quali strumenti utilizzare

Procedure ottimali per il monitoraggio della rete: cosa monitorare e quali strumenti utilizzare

Realizza un sistema di monitoraggio di rete efficace con una chiara copertura dei dispositivi, metriche di prestazioni utili, avvisi tempestivi e un confronto tra SolarWinds NPM, PRTG e OpManager.

I 10 migliori strumenti di scansione di rete per scoprire dispositivi e indirizzi IP

I 10 migliori strumenti di scansione di rete per scoprire dispositivi e indirizzi IP

Confronta gli strumenti di scansione di rete per la rapida individuazione dei dispositivi, le scansioni IP multipiattaforma e la gestione degli accessi IP (IPAM) aziendale, con indicazioni su come scegliere l'opzione più adatta alla tua rete.

Come utilizzare Nmap per il traceroute e leggere il percorso di rete

Come utilizzare Nmap per il traceroute e leggere il percorso di rete

Utilizza l'opzione --traceroute di Nmap per mappare gli hop a un host autorizzato, comprendere l'output di hop e RTT e risolvere i problemi relativi alle risposte mancanti senza eseguire scansioni eccessive.