Problème : des paquets vieillots
Lorsque votre serveur tourne sous Debian, les paquets sont éprouvés mais souvent datés. Ils tournent bien mais on ne peut pas vraiment bénéficier des versions les plus actuelles pour Apache, MySQL ou PHP par exemple.
La solution : ajouter un nouveau dépôt pour LAMP
La solution est tout simple, il suffit d’ajouter un nouveau dépôt, Dotdeb, qui permet de mettre à jour les paquets libmemcached, mysql, nginx, percona-toolkit, php5, php5-pecl, pinba-engine, redis, ruby-passenger, zabbix.
Votre base de données ralentit tout ?
Tables wp_options surchargées, autoload incontrôlé, requêtes non indexées — une base WordPress mal entretenue finit toujours par plomber les temps de réponse. Je l'audite, je la nettoie, je l'optimise.
Diagnostiquons votre base de données →On édite donc notre liste :
nano /etc/apt/sources.listLangage du code : PHP (php)
et on ajoute les dépôts de Dotdeb, qui sont maintenus à jour par Guillaume Plessis :
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable allLangage du code : JavaScript (javascript)
et enfin, on ajoute la clé GPG :
wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | apt-key add -Langage du code : JavaScript (javascript)
La mise à jour se fait comme d’habitude :
apt update && apt upgrade
Petit ménage
La mise à jour a induit 2 problèmes facilement solvables. Le premier problème a été ce message d’avertissement :
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/suhosin.so' - /usr/lib/php5/20090626/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0Langage du code : JavaScript (javascript)
Les paquets PHP de Dotdeb contiennent déjà le Suhosin patch dont il n’est pas nécessaire d’avoir l’extension php5-suhosin installée. Nous pouvons donc la supprimer :
apt purge php5-suhosin
Le deuxième problème m’a pris beaucoup plus de temps à traquer : pages blanches pour l’ensemble du site! J’ai épluché tous les logs, vérifié ma configuration MySQL et PHP jusqu’à trouver ce message d’erreur :
PHP Parse error: syntax error, unexpected $end in /themes/functions.php on line 1624Langage du code : PHP (php)
Une recherche Google plus tard, il s’avère que cela est dû à l’utilisation de shortags PHP comme <? au lieu du standard <?php – qui ne sont plus acceptés par défaut dans les dernières versions de PHP. J’en avais deux et cela bloquait l’affichage des pages ET la connexion MySQL. Tout est rentré dans l’ordre maintenant.
Conclusion
Voici un très bon moyen de mettre les paquets importants qui font tourner le site à jour. On passe aux dernières versions de PHP et MySQL, une avancée par rapport aux versions disponibles sous les dépôts Debian officiels.
Votre base de données ralentit tout ?
Tables wp_options surchargées, autoload incontrôlé, requêtes non indexées — une base WordPress mal entretenue finit toujours par plomber les temps de réponse. Je l'audite, je la nettoie, je l'optimise.
Diagnostiquons votre base de données →

