-
Notifications
You must be signed in to change notification settings - Fork 0
fr Troubleshooting
🇬🇧 This page is also available in English: Troubleshooting
Cette page couvre les problèmes les plus courants rencontrés avec un déploiement Nextcloud depuis Azure Marketplace, ainsi que les commandes de diagnostic et les solutions.
- Vous êtes connecté à la VM via SSH — voir fr-SSH-Connection.
- Les quatre services devraient être en cours d'exécution : Nginx, PHP-FPM 8.3, PostgreSQL 16, Redis.
Symptômes : Le navigateur affiche « connexion refusée » ou expire sur https://cloud.exemple.com.
Diagnostic :
# Vérifier si Nginx écoute sur le port 443
sudo ss -tlnp | grep ':443'
# Vérifier les règles NSG / pare-feu (depuis le Portail Azure)
# Paramètres > Mise en réseau > Règles de port entrant — le port 443 doit être autoriséSolutions :
- Vérifiez que le NSG (Groupe de sécurité réseau) de la VM a une règle entrante autorisant TCP port 443. Accédez au Portail Azure > VM > Mise en réseau > Règles de port entrant.
- Vérifiez que Nginx est en cours d'exécution :
sudo systemctl status nginx - Redémarrez Nginx si nécessaire :
sudo systemctl restart nginx
Symptômes : Le navigateur affiche un avertissement de sécurité « Votre connexion n'est pas privée » (ERR_CERT_DATE_INVALID).
Diagnostic :
# Vérifier la date d'expiration du certificat
sudo certbot certificatesSolution :
Renouvelez le certificat manuellement :
sudo certbot renew
sudo systemctl reload nginxPour le renouvellement automatique, vérifiez que le minuteur certbot est actif :
sudo systemctl status certbot.timerSi le minuteur est inactif, activez-le :
sudo systemctl enable --now certbot.timerSymptômes : Nextcloud affiche « Erreur lors de la création de l'utilisateur admin : impossible de se connecter à la base de données » ou « could not connect to server: Connection refused ».
Diagnostic :
sudo systemctl status postgresql
sudo journalctl -u postgresql --since "1 hour ago" | tail -30Solutions :
- Démarrez ou redémarrez PostgreSQL :
sudo systemctl restart postgresql - Vérifiez l'espace disque — PostgreSQL peut échouer si le disque est plein :
df -h /
- Consultez le journal PostgreSQL :
sudo journalctl -u postgresql --since "1 hour ago" | tail -50
Symptômes : Nginx retourne une erreur 502 Bad Gateway. Les pages ne se chargent pas.
Diagnostic :
sudo systemctl status php8.3-fpm
sudo journalctl -u php8.3-fpm --since "30 minutes ago" | tail -20Solutions :
- Redémarrez PHP-FPM :
sudo systemctl restart php8.3-fpm - Consultez le journal PHP :
sudo tail -50 /var/log/php8.3-fpm.log - Augmentez la limite mémoire si les processus sont tués par OOM (Out of Memory) :
Modifiez
/etc/php/8.3/fpm/php.ini→memory_limit = 512M, puis redémarrez PHP-FPM.
Symptômes : Nextcloud affiche des erreurs « Could not obtain lock » ou les opérations sur les fichiers échouent avec des avertissements de verrouillage.
Diagnostic :
sudo systemctl status redis-server
redis-cli pingRéponse attendue de redis-cli ping : PONG
Solutions :
- Démarrez ou redémarrez Redis :
sudo systemctl restart redis-server - Consultez le journal Redis :
sudo tail -30 /var/log/redis/redis-server.log - Vérifiez la configuration Redis dans le fichier
config.phpde Nextcloud :sudo grep -A 5 'redis' /var/www/nextcloud/config/config.php
Symptômes :
- Le navigateur affiche : « Accès à partir d'un domaine non approuvé »
-
https://<vm-fqdn>/status.phpretourneHTTP 400 - L'accès par IP peut encore fonctionner (
https://<vm-ip>/)
Diagnostic :
# Vérifier les domaines de confiance actuels
sudo -u www-data php /var/www/nextcloud/occ config:system:get trusted_domains
# Confirmer le comportement de status.php sur le FQDN
curl -k -I https://<vm-fqdn>/status.phpSi le FQDN est absent de trusted_domains, Nextcloud rejette l'en-tête Host et retourne 400.
Correction immédiate (VM en cours d'exécution) :
# Ajouter votre FQDN comme prochain index de domaine de confiance
FQDN="nextcloud-vm.canadacentral.cloudapp.azure.com"
INDEX=$(sudo -u www-data php /var/www/nextcloud/occ config:system:get trusted_domains | wc -l)
sudo -u www-data php /var/www/nextcloud/occ config:system:set trusted_domains "$INDEX" --value="$FQDN"
# Vérifier
sudo -u www-data php /var/www/nextcloud/occ config:system:get trusted_domains
curl -k -I "https://$FQDN/status.php"Résultat attendu : status.php retourne HTTP 200, et la page de connexion est accessible via le FQDN.
Correction durable (nouveaux déploiements) :
Lorsque vous utilisez un DNS, assurez-vous que le domaine est disponible lors du premier démarrage et injecté dans la configuration Nextcloud :
- Définissez
NC_DOMAIN=<vm-fqdn>dans/etc/nextcloud/config.envavant l'exécution denextcloud-first-boot.service. - Exécutez le premier démarrage et vérifiez que
trusted_domainsinclut à la fois l'IP et le FQDN.
Cela évite les échecs E2E tels que HTTP 400 sur /status.php et les vérifications de page de connexion.
# Vérifier les quatre services en une seule commande
sudo systemctl is-active nginx php8.3-fpm postgresql redis-server
# Afficher le journal applicatif Nextcloud (50 dernières lignes)
sudo tail -50 /var/log/nextcloud/nextcloud.log | python3 -m json.tool 2>/dev/null || \
sudo tail -50 /var/log/nextcloud/nextcloud.log
# Vérifier l'espace disque
df -h
# Vérifier l'utilisation de la mémoire
free -h
# Vérifier les workers PHP-FPM actifs
ps aux | grep php-fpm | grep -v grep | wc -lExécutez la vérification d'intégrité intégrée pour détecter les fichiers principaux modifiés ou manquants :
sudo -u www-data php /var/www/nextcloud/occ integrity:check-coreL'absence de sortie indique que tous les fichiers principaux sont intacts.
| Étape suivante | Page |
|---|---|
| Obtenir de l'aide | fr-Support |
| Mettre à jour Nextcloud | fr-Updating-Nextcloud |
| Vérifier les services | fr-Post-Deployment-Verification |
Getting Started
Configuration
Administration
Using Nextcloud
Help
Démarrage
Configuration
Administration
Utiliser Nextcloud
Aide