PHP Remote Debugging

Développer un site Web en PHP présente de nombreux avantages, dont la portabilité sur de nombreuses plate-formes, et l’existence de solutions quasiment gratuites. Mais les outils disponibles de nos jours permettent aussi aussi aux professionnels de mettre en œuvre leurs meilleures pratiques. Il est donc un peu décevant de constater que trop souvent les informaticiens en entreprises, ou travaillant sur des projets d’entreprises, utilisent mal – et parfois pas du tout – les possibilités que permettent ces outils en matière de debugging, y compris de remote debugging.

La diversité des plates-formes et des outils disponibles pour ces développements en PHP est en constante croissance. Les plates-formes les plus souvent utilisées en production sont de type Unix :
- notamment le système Linux, disponible via de multiples distributions, dont les outils d’installation et de mise à jour de logiciels supplémentaires sont multiples et variés,
- et aussi les systèmes de la famille BSD, moins nombreux que les différentes distributions Linux, et d’emploi similaire à bien des égards.
Mais on peut aussi utiliser des systèmes serveurs de la famille Windows, notamment les différentes versions de Windows 2003 et de Windows 2008 (voire Windows 2000).
Dans tous ces cas, le serveur Web Apache est le plus fréquemment utilisé, mais IIS l’est évidemment souvent sur plate-forme Windows.

Les outils de développement sont nombreux eux aussi, et la majorité d’entre eux sont disponibles sous les environnements Linux et Windows. Certains de ces outils sont basiques, d’autres sont extrêmement sophistiqués. Certains IDE sont quasiment dédiés à ce langage PHP, éventuellement à quelques autres langages, d’autres IDE sont plus polyvalents.

Dans tous les cas, il n’existe pas de meilleur inventaire que celui qui consiste à explorer le Web avec quelques mots-clés, ce qui est plus utile que d’essayer de tenir à jour une liste forcément incomplète et tôt ou tard obsolète.

 

Par contre, l’utilisation avancée de ces outils nécessite des réglages précis, parfois mal documentés. Le remote debugging fait partie de ces fonctions trop souvent délaissées dans des documentations destinées aux débutants ou au grand public.
Il est bien sûr illusoire de vouloir décrire le remote debugging pour toutes les plate-formes et tous les IDE auxquels il est fait allusion ci-dessus. Ce groupe de billet se borne à décrire comment procéder avec :
- un serveur Wamp sous Windows,
- l’IDE Eclipse.

Ce choix permet de rester cohérent avec le groupe de billets sur l’installation d’un serveur Weave sous Windows. Bien sûr, les informations données ici demeurent assez aisément transposables au cas d’un serveur Apache sous système de type Unix.
Ce groupe de billets concerne l’utilisation d’Eclipse en version 3.6 (nom de code Helios), et de WampServer 2.0i, un package gratuit qui contient :
- Apache 2.2.11i,
- MySQL 5.1.36,
- PHP 5.3.0.

 

 

Introduction
L’extension Xdebug
Utilisation d’Eclipse