web-dev-qa-db-fra.com

Débogage à distance avec XDebug et PHPStorm

Tout d'abord:

  • Le serveur est un Apache fonctionnant sur Debian dans un VMPlayer
  • L'hôte est Windows 7
  • Le serveur de débogage est XDebug
  • Les fichiers sont directement accessibles via un dossier partagé

Important : XDebug est correctement configuré sur Apache et mon pare-feu Win7 également. Je sais que b/c je peux déboguer avec Eclipse.

Donc, ce que j'échoue semble être la configuration de base de PHPStorm.

Permettez-moi de vous donner plus de détails:

  • IP du serveur: 192.168.56.128
  • IP de mon hôte: 192.168.56.1

le fichier que je veux déboguer est index.php:

  • emplacement sur mon hôte Win7: C:\dev\sf\Symfony \
  • emplacement sur Debian:\mnt\hgfs\sf\Symfony \
  • URL: 192.168.56.128/Symfony/index.php

Peu importe ce que je tripote ensemble ... je reçois des messages d'erreur bizarres comme "En attente de connexion de JetBrains PhpStorm ..." ou PHPStorm me demande Mozillas profile.ini, même si j'ai configuré Chrome par défaut dans les navigateurs Web.

Je vais donc simplement mettre en place un nouveau projet et j'espère que quelqu'un me dira ce qui ne va pas avec ma configuration.

Exécuter/Modifier les configurations/Valeurs par défaut/PHP Débogage à distance:

  • Serveur: "Debian"
  • Clé IDE: -
  • Coupure en première ligne: oui

Serveurs:

  • Nom: "Debian"
  • Hôte: 192.168.56.128
  • Port: 80
  • Débogueur: Xdebug
  • utiliser les mappages de chemins: oui
  • un mappage de chemin configuré:

C:\dev\sf\Symfony =>/mnt/hgfs/sf/Symfony (également essayé/Symfony - b/c PHPStorm ne devrait pas se soucier de quoi que ce soit ci-dessus/Symfony!?)

Exécuter/Modifier les configurations/Paramètres par défaut/PHP Application Web:

  • Serveur: "Debian"
  • URL de démarrage:/Symfony
  • Navigateur: Chrome
  • Coupure en première ligne: oui

Maintenant, je choisis: Run/Debug .../1.index.php

Et on me demande: Mozilla's profile.ini ... mais je ne le trouve pas

Où est-ce ... ?

Je suis déjà arrivé si loin que PHPStorm a commencé Chrome. Mais peut-être que je trie d'abord cela. Alors, comment puis-je faire fonctionner Firefox? J'utilise également Firefox avec Eclipse ... aucune question n'est posée pour un profile.ini.

21
Raffael

D'accord, il y a trois choses que j'aimerais partager avec vous. Ce n'est pas la recette complète, mais les ingrédients clés qui m'ont le plus dérouté sont:

  1. Les sections importantes à configurer sont "Serveurs" et "PHP Remote Debugging".

  2. Pour configurer "PHP Remote Debugging", vous devez d'abord ajouter un nouveau jeu de données en utilisant le [+] dans le coin supérieur gauche. Le panneau que vous obtenez en cliquant simplement sur le bouton "PHP R D" conserve simplement les paramètres par défaut !

  3. Chemin absolu concernant le VM signifie en fait le chemin absolu à partir de la racine (\ mnt\hgfs\sf\Symfony). Cela m'a dérouté car je ne suis toujours pas vous savez pourquoi PhpStorm se soucie des niveaux de répertoire au-dessus du dossier partagé, mais c'est le cas.

21
Raffael

Si vous rencontrez toujours des problèmes, il existe deux articles de blog par les créateurs sur la façon de configurer les choses correctement.

Le premier devrait fonctionner dans la plupart des cas et nécessite configuration zéro autre qu'une installation de xdebug fonctionnelle

La seconde détaille tous les paramètres de configuration en détail

7
Blair McMillan

Pour "voir" le profile.ini dans la boîte de dialogue PHP Storm 'Select File' Storm, cliquez simplement dessus avec le bouton droit de la souris et choisissez 'Afficher les fichiers cachés' puis (dans WIn7) déplacez vers C:\Users\YOURUSERNAME\AppData\Roaming\Mozilla\Firefox ou l'équivalent dans votre système d'exploitation

1
b0r7