Comment configurer la mise en cache Redis pour Nextcloud sur Ubuntu 24.04

Le manuel d'administration actuel de Nextcloud documente toujours l'extension PhpRedis pour la mise en cache Redis et le verrouillage transactionnel des fichiers. Il documente également un nouveau système de gestion des clés (KeyValueCache) sans extension, ajouté dans Nextcloud 34.0.2. Ce guide utilise la configuration PhpRedis existante car Ubuntu 24.04 fournit le paquet d'extension Redis pour PHP 8.3. Le nouveau système de gestion des clés est disponible si votre version de Nextcloud le prend en charge, mais ses clés de configuration diffèrent ; ne confondez pas les deux exemples.

Le résultat sera un service Redis local accessible uniquement à l'hôte Nextcloud, un cache distribué basé sur Redis avec verrouillage de fichiers, et APCu pour un cache local plus rapide. Il s'agit d'une configuration classique sur un seul serveur. Si vos serveurs web et PHP sont répartis sur plusieurs hôtes, utilisez un point de terminaison Redis partagé avec les contrôles réseau appropriés au lieu de la configuration localhost décrite ci-dessous.

Quelles modifications Redis apporte-t-il à une installation Nextcloud ?

Redis fournit à Nextcloud un service clé-valeur pour les entrées de cache distribuées et les verrous transactionnels de fichiers. Ces verrous permettent d'éviter les conflits d'opérations lorsque plusieurs requêtes accèdent simultanément à des fichiers. Redis ne remplace ni la base de données, ni le stockage de fichiers, ni PHP OPcache, ni le système de sauvegarde de Nextcloud. Sur un serveur unique, APCu est généralement plus rapide pour la mise en cache locale, tandis que Redis gère le cache partagé et les verrous. Nextcloud déconseille également l'utilisation de Redis comme cache local, en particulier avec plusieurs serveurs web.

Le manuel le plus récent de Nextcloud indique que Redis est un backend pris en charge et spécifie PhpRedis 2.2.6 ou une version ultérieure pour la méthode basée sur les extensions. Les archives de paquets d'Ubuntu 24.04 incluent `phpRedis` php8.3-rediset `redis` redis-server. Les versions des paquets peuvent changer au fur et à mesure des mises à jour d'Ubuntu ; il est donc recommandé d'installer depuis les dépôts Ubuntu configurés plutôt que de figer une version copiée d'un guide plus ancien. Références consultées le 6 octobre 2026 : documentation sur la mise en cache en mémoire de Nextcloud , liste des paquets PhpRedis pour Ubuntu 24.04 et liste des paquets du serveur Redis pour Ubuntu 24.04 .

Avant de commencer

  • Vérifiez le répertoire d'installation de Nextcloud et l'environnement d'exécution PHP utilisé par le site web. Les commandes ci-dessous supposent une installation standard sous Ubuntu avec PHP 8.3, Apache ou PHP-FPM, et le compte de service web www-data.
  • Sauvegardez le fichier config/config.phpet notez comment le restaurer. Le chemin exact varie : par exemple, un paquet installé peut utiliser un autre emplacement /var/www/nextcloud/config/config.php, tandis qu’une installation manuelle peut se trouver ailleurs.
  • Prévoyez une fenêtre de maintenance si le serveur gère des chargements de fichiers actifs. Le redémarrage d'Apache ou de PHP-FPM interrompt brièvement les requêtes web.

1. Installez Redis, PhpRedis et APCu

Mettez à jour les métadonnées du paquet et installez le démon et les extensions PHP :

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

Le paquet Ubuntu php-redissélectionne l'extension en fonction de la version PHP installée. Si vous gérez plusieurs versions de PHP ou utilisez un dépôt PHP tiers, vérifiez que l'extension est bien installée pour la version PHP exacte utilisée par Nextcloud. L'activation d'un module pour l'environnement d'exécution PHP en ligne de commande ne garantit pas son chargement par Apache ou PHP-FPM.

Activez Redis au démarrage et lancez-le maintenant, puis vérifiez son état de service :

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

Une réponse Redis locale saine à la dernière commande est PONG. Si le service est inactif, vérifiez son état sudo journalctl -u redis-server -n 50 --no-pageravant de modifier la configuration de Nextcloud.

2. Conservez l'écouteur Redis en local.

Pour une installation sur un seul hôte, Redis n'a pas besoin d'écouter sur une interface publique. La configuration par défaut d'Ubuntu est généralement conçue pour un accès local et un mode protégé ; vérifiez-la /etc/redis/redis.confavant de la modifier.

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

Configurez Redis pour qu'il soit connecté à l'interface de bouclage (généralement ` /var/localhost` 127.0.0.1et `/var/localhost` ::1) et laissez le mode protégé activé. Ne rendez pas le port `/var/localhost` accessible 6379depuis Internet et ne le connectez pas à `/var/localhost` 0.0.0.0pour cette configuration locale. Après toute modification de la configuration de Redis, redémarrez le service et répétez l'opération redis-cli ping.

Ce guide utilise TCP en local pour minimiser les modifications des permissions de socket. Un socket Unix est une autre option locale possible et peut réduire la surcharge de connexion, mais le chemin du socket Redis, le groupe propriétaire, les permissions et la configuration Nextcloud doivent correspondre. Si vous choisissez délibérément cette solution, suivez l'exemple de socket du manuel Nextcloud.

3. Vérifiez que PHP peut charger les deux extensions

Vérifiez les modules PHP en ligne de commande :

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

Vous devriez voir les deux noms. Si l'un d'eux est manquant, vérifiez les fichiers de modules activés php --iniet installez le paquet correspondant à votre version de PHP. Redémarrez le serveur PHP utilisé par le site web afin que ses processus chargent les nouveaux modules. Pour Apache avec mod_php, exécutez la commande suivante : [commande manquante] sudo systemctl restart apache2. Pour une installation PHP-FPM utilisant PHP 8.3, exécutez la commande suivante : [commande manquante sudo systemctl restart php8.3-fpm] ; redémarrez ou rechargez le serveur web selon les besoins de votre déploiement.

La vérification via l'interface de ligne de commande (CLI) constitue un premier indicateur utile, mais ne garantit pas le bon fonctionnement de l'environnement web. Par la suite, utilisez les paramètres d'administration de Nextcloud et la vue des informations serveur ou PHP pour vérifier que le processus web reconnaît bien les modules de cache.

4. Ajoutez les paramètres de cache à Nextcloud

Ouvrez le fichier existant config/config.phpavec un éditeur de texte. Sauvegardez-le au préalable, puis fusionnez ces entrées dans le tableau PHP existant avant de le fermer );. Ne remplacez pas l'intégralité du fichier et n'ajoutez pas une seconde copie des clés déjà présentes.

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

L'adresse de bouclage explicite correspond au service Redis local. Si vous utilisez un socket Unix, indiquez son chemin comme hôte Redis et configurez le démon et les permissions en conséquence. Si Redis requiert une authentification, ajoutez le nom d'utilisateur et le mot de passe ACL Redis corrects au redistableau et configurez Redis en conséquence ; ne publiez jamais de mot de passe réel dans un exemple partagé ou une publication d'assistance publique.

Conservez les paramètres existants, tels que instanceidles identifiants de base de données, les domaines de confiance et le répertoire de données. La syntaxe des tableaux PHP est importante : séparez les éléments par des virgules et assurez-vous que chaque paramètre n’apparaît qu’une seule fois.

5. Valider le cache et le verrouillage des fichiers

Exécutez la commande de vérification d'état de Nextcloud depuis le répertoire d'installation en tant qu'utilisateur du service web. Remplacez le chemin d'accès indiqué si votre installation se trouve ailleurs :

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

Vérifiez l'interface web, dans les paramètres d'administration , la présence d'avertissements de configuration et assurez-vous que les modules Redis et APCu sont accessibles à l'environnement d'exécution PHP web. Testez ensuite les opérations de fichier courantes avec un petit fichier non critique : téléversez-le, renommez-le, téléchargez-le et supprimez-le. La page d'administration ne devrait plus signaler d'absence de cache mémoire une fois le cache local correctement configuré.

Un test réussi PONGprouve uniquement que Redis répond au client CLI local. La vérification de l'administrateur Nextcloud et les opérations de fichiers courantes permettent de vérifier conjointement l'extension PHP, les permissions du serveur web, les paramètres de connexion Redis et la configuration de l'application. Un chargement de page plus rapide lors d'un test ne constitue pas une preuve d'amélioration des performances ; la charge de travail, le stockage, la base de données et la capacité des processus PHP influent tous sur le temps de réponse.

Dépannage des problèmes courants

La page d'administration signale toujours l'absence de cache mémoire.

Vérifiez l'absence de doublons ou d'erreurs dans la clé de cache, assurez-vous qu'elle memcache.localpointe bien vers APCu et redémarrez le service Apache ou PHP-FPM approprié. Une installation PHP en ligne de commande uniquement peut différer de l'environnement d'exécution PHP utilisé par le site web.

Redis est en cours d'exécution, mais Nextcloud signale des erreurs de connexion.

Comparez les valeurs de `<input>` hostet ` port<output> config.php` avec celles de l'écouteur /etc/redis/redis.conf. Confirmez l'accès local avec redis-cli -h 127.0.0.1 -p 6379 ping`<input>` et consultez les journaux Redis et du serveur web. Si vous utilisez un socket ou un mot de passe, vérifiez que son chemin d'accès ou ses identifiants correspondent des deux côtés.

Les opérations sur les fichiers échouent après la modification

Si l'instance devient inutilisable, restaurez temporairement la sauvegarde config.php, puis examinez les journaux PHP et du serveur web. Vérifiez la ponctuation des tableaux, assurez-vous que le service Redis est actif et vérifiez qu'aucun pare-feu ni ACL Redis personnalisé ne bloque le processus web. Évitez d'effacer les données Redis en premier lieu ; examinez la connexion et la configuration avant de supprimer les entrées du cache ou de verrouiller les données.

Ce que cette configuration ne couvre pas

Il s'agit d'une configuration mono-serveur, et non d'une architecture Redis haute disponibilité. Elle ne configure ni la réplication Redis, ni Sentinel, ni TLS, ni un serveur de cache distant, ni le stockage de session, ni un déploiement Nextcloud en cluster. Les nœuds Nextcloud multi-serveurs doivent partager le même cache distribué et le même système de verrouillage ; l'exécution de localhost sur chaque nœud créerait des instances Redis distinctes, ce qui irait à l'encontre de cette exigence. Pour une topologie distante ou en cluster, veuillez consulter la section de configuration Nextcloud correspondante et sécuriser les communications Redis pour cet environnement.

Une fois la configuration stabilisée, surveillez l'utilisation de la mémoire Redis et l'aperçu de l'administration de Nextcloud. Allouez suffisamment de mémoire pour le cache et les verrous, évitez les politiques d'éviction non vérifiées susceptibles d'effacer les données verrouillées et effectuez des sauvegardes régulières de la base de données et des fichiers. La mise en cache Redis peut réduire la surcharge liée au cache et aux verrous, mais elle ne constitue qu'un élément d'une installation Nextcloud saine et ne remplace pas la planification de la capacité.

Laisser un commentaire

Les 10 meilleurs outils de balayage ping pour trouver les appareils sur votre réseau

Les 10 meilleurs outils de balayage ping pour trouver les appareils sur votre réseau

Comparez 10 outils de balayage ping pour une découverte rapide du réseau local, une analyse multiplateforme et la gestion des adresses IP. Découvrez ce qu'un balayage peut – et ne peut pas – vous révéler.

6 outils de gestion de réseau performants pour le suivi des performances

6 outils de gestion de réseau performants pour le suivi des performances

Comparez six outils de gestion de réseau pour la surveillance des performances, notamment la couverture SNMP, la cartographie, les alertes, les modèles de déploiement et les compromis en matière de coûts.

Moniteur de ping : 7 outils gratuits et open source pour la disponibilité du réseau

Moniteur de ping : 7 outils gratuits et open source pour la disponibilité du réseau

Comparez sept moniteurs de ping gratuits et open source, allant des suites réseau complètes aux sondes de latence ciblées, et choisissez celui qui convient le mieux à vos besoins en matière de disponibilité, de perte de paquets et d'historique.

Meilleurs analyseurs Wi-Fi pour Windows, iOS et Android

Meilleurs analyseurs Wi-Fi pour Windows, iOS et Android

Comparez les meilleurs analyseurs Wi-Fi pour Windows, iPhone et Android, incluant des outils pour la congestion des canaux, la couverture du signal, les cartes thermiques et le dépannage réseau.

La qualité de service (QoS) dans les réseaux : définition et fonctionnement

La qualité de service (QoS) dans les réseaux : définition et fonctionnement

Découvrez ce que signifie la QoS dans le domaine des réseaux, comment les marquages ​​DSCP et les files d'attente de trafic priorisent la voix, la vidéo et les applications professionnelles, et ce que la QoS ne peut pas corriger.

Meilleur logiciel serveur SFTP pour les transferts de fichiers sécurisés

Meilleur logiciel serveur SFTP pour les transferts de fichiers sécurisés

Comparez les logiciels serveurs SFTP fiables pour Windows et Linux, notamment OpenSSH, Bitvise, SolarWinds et SFTPGo. Trouvez la solution idéale pour vos besoins en matière de sécurité et de transfert de fichiers.

Les 7 meilleurs outils de gestion d'adresses IP pour les équipes réseau

Les 7 meilleurs outils de gestion d'adresses IP pour les équipes réseau

Comparez sept outils de gestion d'adresses IP pour la découverte de sous-réseaux, la coordination DNS et DHCP, l'inventaire réseau et l'IPAM open source.

Bonnes pratiques de surveillance réseau : que surveiller et quels outils utiliser

Bonnes pratiques de surveillance réseau : que surveiller et quels outils utiliser

Mettez en place une surveillance réseau pratique avec une couverture claire des périphériques, des indicateurs de performance utiles, des alertes exploitables et une comparaison de SolarWinds NPM, PRTG et OpManager.

Les 10 meilleurs outils d'analyse réseau pour la découverte des périphériques et des adresses IP

Les 10 meilleurs outils d'analyse réseau pour la découverte des périphériques et des adresses IP

Comparez les outils d'analyse réseau pour la découverte rapide des périphériques, les analyses IP multiplateformes et la gestion des identités et des accès IP (IPAM) d'entreprise, avec des conseils pour adapter chaque option à votre réseau.

Comment utiliser Nmap pour traceroute et lire le chemin réseau

Comment utiliser Nmap pour traceroute et lire le chemin réseau

Utilisez l'option --traceroute de Nmap pour associer les sauts à un hôte autorisé, comprendre les résultats des sauts et du RTT, et résoudre les problèmes de réponses manquantes sans sur-analyse.