Dans Nextcloud, la page Paramètres > Administration > Vue d’ensemble vous permet d’avoir un bon aperçu des tâches de maintenance à effectuer sur votre installation Nextcloud.
This version of Nextcloud is not compatible with > PHP 7.4
C’est une erreur – et non un avertissement – qui bloque toutes les commandes suivantes dans le terminal. Elle apparaît lorsqu’une version de PHP plus récente est installée sur votre serveur.
Chez moi, par exemple, j’ai PHP 7.4 pour les sites en production et pour Nextcloud mais aussi PHP 8 pour les plateformes de développement.
Voici le message d’erreur:
This version of Nextcloud is not compatible with > PHP 7.4.
You are currently running 8.0.0
Ce message apparaît parce que Nextcloud lance un rapide php -v
pour déterminer la version de PHP installée. Cela ne reconnaît par contre que la version la plus récente installée.
Voici ce que donne la commande :
PHP 8.0.0 (cli) (built: Nov 27 2020 12:26:22) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
with Zend OPcache v8.0.0, Copyright (c), by Zend Technologies
Code language: CSS (css)
La solution consiste à modifier manuellement la version retournée par php -v
, à l’aide de la commande update-alternatives
:
update-alternatives --set php /usr/bin/php7.4
Code language: JavaScript (javascript)
Si on relance php -v
, voici le résultat:
PHP 7.4.13 (cli) (built: Nov 28 2020 06:24:59) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.13, Copyright (c), by Zend Technologies
Code language: CSS (css)
Avec cela, vous êtes parés pour les commandes occ de Nextcloud.
Nextcloud reste bloqué en mode maintenance
Cela peut arriver lors d’une mise à jour, pour diverses raisons.
Solution 1: avec la commande occ
cd /home/www/nextcloud
sudo -u www-data php ./occ maintenance:mode --off
Solution 2: éditer le fichier config.php
1. Editez le fichier config.php:
nano /home/www/nextcloud/config/config.php
2. trouvez:
'maintenance' => true,
Code language: PHP (php)
3. remplacez par:
'maintenance' => false,
Code language: PHP (php)
Enregistrez le fichier, l’assistant de mise à jour est alors capable de reprendre là où il s’était arrêté, automatiquement.