Thème
Développement WebXdebug est un excellent module pour PHP, mais il lui manque quelques fonctionnalités, comme la gestion des constantes, ..., ainsi que la possibilité de pouvoir envoyer le debug où l'on veut. En effet difficile en entreprise d'avoir un seul ordinateur pouvant recevoir la requête ...
Cette limitation est voulue par le développeur Derick Rethans malgré les demandes d'ajout de cette fonctionnalité dans le Bug Tracking celui ci refuse de le faire, à cause de la dangerosité possible de celle ci, en effet envoyer un debug a une personne non autorisée pourrait être catastrophique vu que le débuggueur envoit le code source du script ...
Bref vous voulez faire sauter cette limitation vous êtes conscient de ce que vous faites et bien allons y !
Juste avant ce commentaire (ligne 751 de xdebug.c)
/* Check if we have this special get variable that stops a debugging * request without executing any code */Ajoutez
/**************************************
* client_ip
*/
char *remote_host;
remote_host = zend_ini_string(
"xdebug.remote_host",
sizeof("xdebug.remote_host"),
0
);
if (strcmp(remote_host, "client_ip") == 0)
{
if
(
PG(http_globals)[TRACK_VARS_COOKIE]
&& zend_hash_find(
PG(http_globals)[TRACK_VARS_SERVER]->value.ht,
"REMOTE_ADDR",
sizeof("REMOTE_ADDR"), (void **) &dummy
) == SUCCESS
)
{
remote_host = xdstrdup(Z_STRVAL_PP(dummy));
zend_alter_ini_entry(
"xdebug.remote_host",
strlen("xdebug.remote_host") + 1,
remote_host, strlen(remote_host),
PHP_INI_SYSTEM,
PHP_INI_STAGE_ACTIVATE
);
}
}
// #client_ip
Désolé pour les indentations, mais sinon le code ne passe pas dans la largeur du blog.
Voilà il ne vous reste plus qu'à (re)compiler Xdebug et mettre à jour la configuration de celui ci, changez simplement la ligne de votre php.ini concernant la directive "xdebug.remote_host" en
xdebug.remote_host=client_ip
Vous voilà maintenant capable de débugguer à plusieurs au boulot !
Ajouter un commentaire