Configurarea xdebug pentru depanare la distanță, rakcheyev

Probleme persistente cu depanare de pe serverul de la distanță de la cunoștințe și prieteni ma împins să scriu un post detaliate despre setarea Xdebug și IDE pentru a depana server Web la distanță.

Se presupune că Linux + Apache + php este instalat și funcționează corect.

Considerat în exemplul Ubuntu, este ușor de transferat în orice sistem * nix.

$ sudo apt - pentru a instala php5 - xdebug

După instalare, verificați dacă extensia este încărcată prin ieșirea funcției phpinfo ():

phpinfo () în scriptul de testare


Configurarea xdebug pentru depanare la distanță, rakcheyev

sau din linia de comandă

$ php - i | grep xdebug

/ etc / php5 / cli / conf.d / 20 - xdebug .ini

Suportul xdebug => activat

xdebug .auto_trace => Off => Oprit

xdebug .cli_color => 0 => 0

xdebug .collect_assignments => Off => Off

xdebug .collect_includes => Activat => Activat

Dacă xdebug este prezent pe linia de comandă și nu există în phpinfo, se pare că configurația apache nu a fost actualizată. Reporniți serverul Web sau specificați o configurație re-citită.

Dacă nu există și în ieșirea din linia de comandă php -i - specificați php manual de unde să descărcați extensia.

Pentru a configura Xdebug, trebuie să setați câțiva parametri care sunt responsabili pentru depanarea la distanță din fișierul de configurare xdebug.

Puteți seta acești parametri direct în php.ini, dar este mai bine să utilizați o configurație specială (xdebug.ini) pentru aceasta.

Server web (apache)

Configurați xdebug pentru serverul web.

În versiunea mea de Ubuntu 14.04, fișierul de configurare a fost /etc/php5/mods-available/20-xdebug.ini

și verificați dacă parametrii noștri s-au modificat în phpinfo ().

IDE (phpStorm 7)

Să mergem la configurarea IDE-ului preferat.

  1. Verificăm dacă portul de depanare corespunde cu ceea ce am scris mai sus (9000):
    phpStorm -> Fișier -> Setări -> [Setări proiect] -> PHP -> Debug
    Configurarea xdebug pentru depanare la distanță, rakcheyev
  2. Creați o configurație de depanare:
    Debug -> Editați configurațiile -> Creați configurarea aplicației Web

    Configurarea xdebug pentru depanare la distanță, rakcheyev
  3. Configurați configurația creată (o singură instanță de depanare, un browser pentru trimiterea unei solicitări HTTP cu o sesiune Xdebug, un server și căi de mapare către fișiere):
    Configurarea xdebug pentru depanare la distanță, rakcheyev

Dacă totul a fost făcut în mod corect, puteți seta un punct de întrerupere într-un fișier, care, în orice caz, va acționa ca un server, cum ar fi index.php.

Și începem să depanem.

Configurarea xdebug pentru depanare la distanță, rakcheyev