Déboguer avec Zend Studio
Transcription
Déboguer avec Zend Studio
Déboguer avec Zend Studio Professionnal ou Studio for Eclipse Le débogage consiste à exécuter vos scripts (pages) ligne par ligne, pour vous permettre d’identifier et corriger plus facilement les bugs qui rendent vos applications instables. Chaque ligne est exécutée l’une après l’autre (ou par bloc entier jusqu’à un point d’arrêt plus loin dans le script) à votre demande. Après chaque séquence, l’exécution est automatiquement mise en pause, de sorte que vous pouvez consulter et analyser la valeur de chaque variable du script (y compris les POST, GET, COOKIES, SESSION, etc.), ainsi que la sortie générée par la page au fur et à mesure. Ce mode d’exécution est rendu possible par l’emploi d’un débogueur, qui se divise en deux parties : l’une côté client (votre poste de travail), l’autre côté serveur. Ce document vous guidera dans le déploiement de tous les éléments nécessaires à la mise en place d’un environnement de débogage. 1. Installer Zend Studio Professionnal / Zend Studio for Eclipse La partie “client” est la plus simple à installer, puisqu’elle est incluse directement dans nos deux environnements de développement : Zend Studio Pro et Zend Studio for Eclipse. La seule recommandation à observer durant l’installation de votre Studio est de bien sélectionner l’installation simultanée de la Zend Toolbar pour Internet Explorer et/ou Firefox. Vous trouverez un second document sur la Zend Toolbar sur la page : http://www.zend.com/fr/products/studio/resources 2. Installer Zend Debugger Zend Debugger est l’extension PHP à embarquer dans votre serveur web pour permettre le débogage de vos scripts. Cette extension transmet d’une part les informations nécessaires au débogage depuis le serveur vers le client (Studio), et d’autre part les instructions d’exécution que vous déterminez dans le Studio vers le serveur. Il existe trois possibilités pour déployer cette extension côté serveur, qui sont détaillées dans les sections suivantes : 2.1 Utiliser Zend Core Core est un package complet et gratuit, permettant de déployer aisément Apache, MySQL, et une version de PHP testée et certifiée par Zend. Cette distribution est disponible pour de nombreux systèmes d’exploitations, à commencer par Windows, Linux et MacOS. Cela garantit l’homogénéité des environnements de développement et de production, même dans une architecture hétérogène. Cette distribution est livrée en standard avec toutes les extensions spécifiques à Zend, y compris, naturellement, le Zend Debugger. http://zend.com/fr/products/core/downloads 2.2 Utiliser Zend Platform Platform apporte à vos serveurs de production ou de recette une nouvelle dimension. Ses capacités en termes d’amélioration des performances couplées à ses fonctionnalités de supervision avancées permettent d’exploiter à 300% vos serveurs, et vos applications ! http://www.zend.com/fr/products/platform/downloads La Platform, qui est elle aussi distribuée en standard avec le Zend Debugger, peut s’installer soit par-dessus Zend Core, soit en complément d’une installation PHP existante, là encore sous de nombreux systèmes d’exploitation. Déboguer avec Zend Studio – v1.5 – Décembre 2007 ©Zend Technologies France – déc. 2007. 2.3 Installation manuelle Bien sûr, il est également possible d’installer uniquement l’extension Zend Debugger dans votre environnement de développement existant. Ceci vous permettra d’activer les fonctionnalités de débogage distant offertes par Zend Studio en quelques minutes. Voici la procédure complète d’installation : 2.3.1 Téléchargement de l’archive Rendez-vous sur http://www.zend.com/fr/products/studio/downloads et sélectionnez dans la liste l’archive correspondant au système d’exploitation de votre serveur. Décompressez son contenu dans un répertoire temporaire. 2.3.2 Installation Sélectionnez, dans le sous-dossier correspondant à votre version de PHP*, le fichier ZendDebugger.so (ou .dll pour la version Windows). Copiez cette extension dans un emplacement définitif. Attention : sous Windows, il vous faut vérifier si votre version de PHP est « Thread Safe » ou non. Si c’est le cas, téléchargez l’extension portant le suffixe « _ts ». Pour déterminer si votre version est « Thread Safe » ou non, consultez phpinfo() et cherchez la chaîne « Thread Safety ». Si sa valeur est « enabled », votre version de PHP est « Thread Safe ». 2.3.3 Chargement et configuration Editez ensuite votre fichier php.ini, et ajoutez la ligne suivante pour charger l’extension : zend_extension = ”chemin complet de ZendDebugger.so” Ou, sous windows : PHP < 5.2 : zend_extension_ts = ”chemin complet de ZendDebugger.dll” PHP >= 5.2 : zend_extension = ”chemin complet de ZendDebugger.dll” Il ne vous reste plus qu’à ajouter deux directives supplémentaires pour autoriser votre poste client à initier des sessions de débogage, et indiquer si vous souhaitez que la présence du débogueur soit indiquée sur le serveur : zend_debugger.allow_hosts= addresse_ip_du client zend_debugger.expose_remotely=always Nota : la valeur adresse_ip_du_client doit être renseignée sous la forme X.X.X.X ou une liste d’adresses séparées par des virgules (X.X.X.X, X.X.X.X, X.X.X.X, …) 2.3.4 Copie du fichier dummy.php Dans l’archive du Zend Débogueur, vous trouverez également un fichier nommé dummy.php, qu’il vous faut copier à la racine de votre serveur web (le chemin configuré dans la directive DocumentRoot d’Apache). 2.3.5 Redémarrage du serveur web Après avoir fait ces modifications, il ne vous reste plus qu’à redémarrer le serveur web. Déboguer avec Zend Studio – v1.5 – Décembre 2007 ©Zend Technologies France – déc. 2007.