La mise à jour de Dolibarr est essentielle pour bénéficier des nouvelles fonctionnalités, des correctifs de sécurité et des améliorations de performances. Cependant, il n'est pas rare que les utilisateurs rencontrent une erreur HTTP 500 interne au serveur juste après une mise à jour. Ce type d'erreur peut être intimidant, car il indique généralement un problème côté serveur sans fournir beaucoup de détails. Dans ce guide détaillé, nous explorerons les causes de l'erreur 500 dans Dolibarr après une mise à jour, comment la diagnostiquer et des solutions étape par étape pour remettre votre système ERP en état de marche.

Table des matières

  1. Comprendre l'erreur HTTP 500

  2. Scénarios typiques déclenchant l'erreur 500 après une mise à jour de Dolibarr

  3. Liste de contrôle avant de commencer le dépannage

  4. Localisation des journaux d'erreurs

  5. Causes courantes et solutions

    • Incompatibilité de version PHP

    • Autorisations de fichier

    • Fichiers manquants ou corrompus

    • Modules obsolètes

    • Erreurs de configuration

    • Échecs de migration de base de données

  6. Utilisation des outils de développement pour les diagnostics

  7. Récupération après une mise à jour échouée

  8. Annuler une mise à jour en toute sécurité

  9. Meilleures pratiques pour éviter l'erreur 500 dans les futures mises à jour

  10. Résumé et recommandations finales


1. Comprendre l'erreur HTTP 500

L'erreur HTTP 500 est une réponse générique du serveur web indiquant qu'un problème s'est produit côté serveur, mais que le serveur ne peut pas être plus précis. Dans le contexte de Dolibarr, cela indique souvent des problèmes d'exécution PHP, des erreurs de configuration ou du code corrompu.

Étant donné que l’erreur est générale, son débogage nécessite une approche méthodique, en vérifiant les journaux et les configurations pour identifier le problème.


2. Scénarios typiques déclenchant l'erreur 500 après une mise à jour de Dolibarr

Plusieurs problèmes peuvent conduire à une erreur 500 juste après la mise à jour de Dolibarr :

  • Le serveur exécute une version incompatible de PHP pour le Dolibarr mis à jour

  • Les autorisations de fichier changent pendant le téléchargement ou l'extraction de la mise à jour

  • Un ou plusieurs fichiers n'ont pas été transférés correctement (fichiers corrompus ou manquants)

  • Les modules personnalisés ou les anciens modules tiers ne sont pas compatibles avec la nouvelle version

  • La mise à jour n'a pas été complètement terminée, laissant la base de données partiellement migrée

La compréhension de ces scénarios permet d’affiner le diagnostic.


3. Liste de contrôle avant de commencer le dépannage

Avant de plonger dans les journaux et les fichiers de configuration, assurez-vous que :

  • Vous disposez d'une sauvegarde de votre base de données et de vos fichiers Dolibarr

  • Votre processus de mise à jour a été suivi conformément à la documentation officielle

  • Aucun utilisateur simultané n'était actif pendant la mise à jour

  • Le processus de mise à jour comprenait le /install répertoire (parfois exclu par erreur)

Avoir ces éléments prêts simplifiera votre processus de débogage.


4. Localisation des journaux d'erreurs

Pour diagnostiquer une erreur 500, l'accès aux journaux d'erreurs est essentiel. Voici les emplacements clés :

Journaux Apache ou Nginx

Selon votre serveur Web, les fichiers journaux sont généralement situés dans :

  • Apache: /var/log/apache2/error.log

  • Nginx : /var/log/nginx/error.log

Journaux PHP

Si PHP a son propre journal configuré :

  • Vérifiez php.ini pour error_log chemin

  • Ou trouvez-les sur /var/log/php/phpX.X-fpm.log (pour PHP-FPM)

Journaux Dolibarr

Dolibarr conserve également ses propres journaux :

  • Vérifiez /documents/dolibarr.log

  • Permettre $dolibarr_main_prod = 0; in conf.php pour voir les erreurs directement dans le navigateur


5. Causes courantes et solutions

Incompatibilité de version PHP

Les versions de Dolibarr sont développées pour des versions spécifiques de PHP. L'exécuter sur une version obsolète ou trop récente peut entraîner des erreurs fatales.

Correction:

  • Consultez la matrice de compatibilité Dolibarr sur le site web officiel

  • Passer à une version PHP prise en charge en utilisant update-alternatives ou votre panneau Web

  • Redémarrer le serveur Web après avoir modifié les versions de PHP

Autorisations de fichier

Des autorisations incorrectes peuvent empêcher PHP d'exécuter certains scripts.

Correction:

chown -R www-data:www-data /var/www/dolibarr
find /var/www/dolibarr -type d -exec chmod 755 {} \;
find /var/www/dolibarr -type f -exec chmod 644 {} \;

Adapter www-data à votre utilisateur de serveur Web actuel.

Fichiers manquants ou corrompus

Cela se produit lorsque le processus de mise à jour est interrompu ou incomplet.

Correction:

  • Re-télécharger les fichiers sources Dolibarr (à l'exclusion conf.php et /documents)

  • Assure-toi .htaccess et tous les fichiers PHP sont inclus

  • Vérifiez les sommes de contrôle MD5/SHA si disponibles

Modules obsolètes

Les modules anciens ou personnalisés peuvent entrer en conflit avec le code principal mis à jour.

Correction:

  • Renommer ou déplacer temporairement les anciens modules hors de /htdocs/custom

  • Vérifiez si l'erreur disparaît

  • Mettre à jour ou réécrire les modules obsolètes

Erreurs de configuration

Non conforme conf.php les paramètres peuvent interrompre les fonctionnalités après les mises à jour.

Correction:

  • Ouvert /htdocs/conf/conf.php

  • Valider les chemins, les URL et les informations d'identification de la base de données

  • Réexécutez l'assistant d'installation si nécessaire via /install/

Échecs de migration de base de données

Parfois, la mise à jour ne termine pas les mises à jour du schéma de la base de données.

Correction:

  • Accédez à /install/

  • Suivez l'assistant de mise à niveau pour terminer les migrations

  • Vérifiez la llx_const et llx_version tables dans la base de données


6. Utilisation des outils de développement pour les diagnostics

Si l'accès aux journaux est limité, vous pouvez activer le mode développeur dans Dolibarr :

$dolibarr_main_prod = 0;

Cela permet d'afficher les erreurs PHP directement dans le navigateur, ce qui est utile pour identifier les erreurs de syntaxe ou les inclusions manquantes.

Utilisez également des outils tels que :

  • Xdebug pour le débogage par étapes PHP

  • Outils de développement de navigateur pour surveiller les en-têtes HTTP et les erreurs JavaScript

Ces outils complètent le diagnostic basé sur les journaux.


7. Récupération après une mise à jour échouée

Si la mise à jour a échoué et a endommagé votre instance, suivez cette approche :

  1. restaurer les fichiers à partir de votre sauvegarde

  2. Restaurer la base de données à partir de la sauvegarde

  3. Réessayez la mise à jour, mais :

    • Vider le cache du navigateur et du serveur

    • Assurez-vous qu'aucun module ou personnalisation n'interfère

Si vous utilisez Git pour le contrôle de version, vous pouvez également revenir en arrière facilement en utilisant :

git checkout [previous-stable-tag]

8. Annuler une mise à jour en toute sécurité

Le retour en arrière n’est pas toujours idéal, mais peut s’avérer nécessaire dans des scénarios critiques.

Restauration manuelle :

  1. Remplacez les fichiers mis à jour par votre sauvegarde antérieure à la mise à jour

  2. Restaurer l'instantané de la base de données avant la mise à jour

  3. Confirmez que la restauration a fonctionné en accédant à l'interface utilisateur et en vérifiant la version du système

Restauration basée sur Git :

Si vous utilisez Git :

git checkout tags/14.0.5

Assurez-vous de faire correspondre la version de votre base de données avec la base de code.


9. Meilleures pratiques pour éviter l'erreur 500 dans les futures mises à jour

Les mesures préventives font toute la différence :

  • Effectuez toujours les mises à jour dans un environnement de rassemblement premier

  • Sauvegarder fichiers et bases de données avant tout changement majeur

  • Évitez d'utiliser modules obsolètes

  • Lire les notes de version avant de mettre à jour

  • Utilisez contrôle de version (comme Git) pour le code personnalisé

Suivre ces pratiques réduit le risque d’erreurs fatales.


10. Résumé et recommandations finales

Rencontrer une erreur 500 dans Dolibarr après une mise à jour peut être décourageant, mais c'est rarement insoluble. La plupart des problèmes proviennent d'incompatibilités PHP, de mises à jour incomplètes ou de problèmes de configuration.

En vérifiant systématiquement les journaux, les autorisations, la compatibilité et la restauration des sauvegardes, vous pouvez résoudre le problème et éviter qu'il ne se reproduise. Préparez-vous toujours aux mises à jour : testez, sauvegardez, vérifiez ; vous gagnerez ainsi des heures de récupération.

Restez informé, suivez les discussions de la communauté Dolibarr et utilisez une approche méthodique pour des expériences de mise à jour plus fluides.