[Résolu] Upgrade Nextcloud & error.php
J'ai lancé la mise à jour de Nextcloud 16.0.8 vers 17.0.3 par l'updater de 16.0.8.
Tout s'est bien passé jusqu'à la fin de l'exécution de l'updater, qui met en place les nouveaux fichiers.
C'est la phase suivante qui coince : normalement, on recharge la page d'accueil du site et la mise à jour se lance.
Chez moi (n.hfn.re), il ne passe rien...
J'ai ouvert une conversation sur le forum d'aide de Nextcloud. On me demande de regarder le fichier error.php. Comment puis-je le récupérer pour la journée du 12/02/20 ?
Merci !
Je viens de vous corriger dans un premier temps les permissions sur les fichiers de votre espace FTP, un script PHP de votre site à du modifier les CHMOD alors qu'ils ne sont pas à modifier sur un hébergement mutualisé. Vous aviez tous vos scripts PHP non exécutables (622) avec une lecture autorisée pour tout le monde (fort heureusement c'était impossible car protégé de mon côté pour éviter ce problème de sécurité), au lieu du CHMOD fonctionnel 750 nécessaire.
Ensuite, concernant le fichier "error.php", j'imagine qu'il est question du fichier "error.log" et ce fichier n'est pas sauvegardé pour des raisons de performance, à l'inverse du fichier access.log. Par contre on peut y avoir accès en temps réel via le superviseur après avoir activé l'affichage des messages d'alertes et d'erreurs PHP : https://www.franceserv.fr/wiki/superviseur
Mais le mieux est d'activer l'affichage des messages d'alertes et d'erreurs PHP via votre interface de gestion pour que cette page de code HTTP 500 totalement blanche puisse donner la raison du problème (actualisé la page de votre site pour voir apparaitre le message d'erreur après que vous avez activé leurs affichages en attendant maximum 5 minutes).
Voilà comment procéder pour faire parler la page blanche de votre site :
https://www.franceserv.fr/faq#comment-f ... erreur-500
Fatal error: Cannot redeclare getallheaders() in /home/httpd/e/r/i/eric-jr/n.hfn.re/3rdparty/ralouphie/getallheaders/src/getallheaders.php on line 10
Ce n'est pas la première fois que je vois cette erreur sur PHP 7.3 (j'utilise aussi NextCloud personnellement). Vous pouvez alors renommer le nom de la fonction "getallheaders()" du fichier getallheaders.php à la ligne 10 par autre chose de non utilisé, par exemple "zutblahblah_getallheaders()".
Je ne sais pas s'il y a une méthode de correction plus "corporate", mais ma méthode fonctionnera.
Une nouvelle fois GRAND MERCI. Votre truc a fonctionné et la mise à jour a pu se faire apparemment sans problème.
J'ai transmis le message d'erreur PHP au forum help.nextcloud.com. Vous pouvez aller voir quelles réponses seront apportées, ou je les posterai ici...
Encore merci, vous êtes le meilleur hébergement que je connaisse !
elodie a écrit :Vous pouvez alors renommer le nom de la fonction "getallheaders()" du fichier getallheaders.php à la ligne 10 par autre chose de non utilisé, par exemple "zutblahblah_getallheaders()".
À votre avis, faut-il faire l'opération inverse une fois l'installation terminée ?
D'après la documentation PHP sur cette fonction :
https://www.php.net/manual/fr/function. ... eaders.php
Cette fonction est présente sur FPM depuis la version 7.3 de PHP (ce que vous utilisez), fort possible alors que cette fonction a été ajoutée pour PHP 7.2 car elle n'existait pas de base sur cette branche.
Par contre ils ont prévus ce cas avec la vérification préalable via la ligne "if (!function_exists('getallheaders')) {" qui ne fonctionne pas, peut être en raison du FPM justement.
Non, ce n'est pas une ligne concernant l'installation mais le fonctionnement de NextCloud, déjà en place de base sur PHP 7.3eric-jr a écrit :À votre avis, faut-il faire l'opération inverse une fois l'installation terminée ?