Ce billet est un peu technique, mais répond à un problème que j'ai eu, et qui peut en intéresser d'autres utilisateurs de Dotclear.
Ce site et le système qui le gère reposent sur le framework PHP. La dernière version majeure de PHP, la version 7, permet des gains de vitesse substantiels. Il était donc important pour moi de migrer depuis PHP 5.6 pour vous en faire bénéficier. J'avais déjà tenté de le faire il y a un certain temps, mais le site ne fonctionnait plus à l'issue du processus, avec un message d'erreur du type :
Dotclear Site temporairement indisponible Veuillez nous excuser pour cette indisponibilité momentanée. Merci de votre compréhension.
Comme Dotclear (le logiciel qui gère le site) est bien compatible avec PHP 7, je pensais que mon thème et ses adaptations ne l'étaient pas. J'avais remis la migration à plus tard, faute de temps pour investiguer.
En réalité, la raison du problème est simple, et sa solution peut intéresser ceux qui comme moi se sont lancés il y a déjà un certain temps. En effet, dans mon cas, le site stocke ses données dans une base de donnée MySQL, et y accède via un pilote intégré à PHP. Les anciennes versions de Dotclear utilisaient le pilote mysql, alors que celui-ci est remplacé dans PHP 7 par le nouveau pilote mysqli. Le point avait été explicité par l'équipe Dotclear, mais il ne fallait pas avoir manqué la news !
Pour ceux qui auraient ce problème, la solution consiste donc à éditer le fichier inc/config.php de votre site, et à changer la ligne :
define('DC_DBDRIVER','mysql');
en :
define('DC_DBDRIVER','mysqli');
Voilà ! Cela devrait faire l'affaire, et votre site vous semblera plus réactif !

4 réactions
1 De Matthieu - 21/01/2017, 11:20
Technique mais utile !
J'ai eu la mauvaise surprise de voir mon blog en carafe après la mise à jour Dotclear 2.10.3 , qui nécessitait un version PHP minimum 5.3. Pour vérifier ma version PHP j'ai du créer un fichier
/phpinfo.phpà la racine, et ensuite pour la modifier j'avais du passer par un fichier/.htaccesscontenant le code :Un
htacccessvers PHP 7 donnait une erreurGator 500.Le fichier
inc/config.phpdont tu parles ici ne contient pour moi que deux blocs de texte commentes, respectivement pour débugger des problèmes dePATH_INFOet de mails.Donc j'ignore comment adapter mon site vers PHP7... et je boude les mises à jours proposées par Dotclear depuis ce jour... :/
2 De Thomas - 22/01/2017, 06:25
La plupart des services d'hébergement Web permettent de sélectionner une version de PHP depuis la configuration de l'hébergement (au niveau de l'interface de gestion du contrat). Là, tu as une possibilité de voir ta version de PHP actuelle et d'en choisir une nouvelle.
Es-tu toujours chez GoDaddy pour ton hébergement ? Si c'est le cas, j'ai regardé sur leur site, et il semble qu'ils soient en retard pour proposer PHP 7 à leurs utilisateurs. Leurs plans Linux parlent de "PHP 5.4 (également compatible avec PHP 5.3-5.5". L'erreur que tu as est une erreur interne au serveur et peut signifier que tu cherches à utiliser PHP 7 alors qu'il n'est pas encore disponible. Un statut PHP de quelques hébergeurs principaux en décembre dernier est dispo ici.
Autrement, je suis surpris que tu ne voies que les blocs commentés de ce fichier
inc/config.php, car il est celui qui contient les informations pour accéder à ta base de données et ton site en a forcément besoin. Es-tu sûr que tu le regardes sur serveur via un accès FTP et un éditeur de texte (un navigateur ne montrera pas le code) ?3 De Benjamin - 02/08/2017, 19:57
Merci beaucoup pour l'astuce, ça m'a résolu mon problème
4 De Florian - 23/05/2018, 19:19
Merci pour ce petit billet bien utile ! Je viens de mettre à jour ma version de PHP (qui commençait à dater sérieusement) et tu m'a évité une bonne galère !