Xdebug über Windows-Subsystem für Linux 2 (WSL2)

Unter dem Schnitt befindet sich ein kleiner Hinweis, wie Sie eine bequeme Umgebung für die Arbeit mit PHP einrichten können, xdebug über Windows Subsystem For Linux 2 (WSL 2).





Zunächst ein wenig Geschichte



Ich habe sehr lange in der Welt von Ubuntu gelebt - das Schreiben in PHP, NodeJS, GoLang auf demselben System, auf dem alles läuft, ist äußerst angenehm. Leider führt eine Führungsposition dazu, dass Sie viel Software verwenden müssen, die nur unter Windows funktioniert.



" SSH". PhpStorm, ssh Ubuntu — .



— :) 100500 Phpstorm dell e7390:) , sftp.



WSL2 (http://habr.com/ru/news/t/516054) .







WSL Windows . Microsoft



PowerShell wsl Linux, Windows





Ubuntu:



sudo apt update
sudo apt upgrade
sudo apt install apache2
sudo apt install php libapache2-mod-php php-mysql php-xml php-curl
sudo a2enmod rewrite


/mnt/d/work/projects/__. , , Linux, . , , .



( ), , php Linux, NTFS . .



  1. WSL . /home/user/projects
  2. ( GIT). /home/user/projects/test
  3. \\wsl$\Ubuntu "Ubuntu" — . \\wsl$

  4. PhpStorm

  5. ( , xdebug)

  6. Automatic upload

  7. WSL


— . = . . , rsync , . , — :)



Apache, . , , php-fpm nginx — .



xdebug



xdebug . .



  1. xdebug sudo apt-get php-xdebug



  2. sudo nano /etc/php/7.2/mods-available/xdebug.ini



    zend_extension=xdebug.so
    xdebug.remote_enable=true
    xdebug.remote_host=wsl.host
    xdebug.remote_port=9002
    xdebug.profiler_enable=1
    xdebug.profiler_output_dir=/tmp
    xdebug.remote_autostart=on
    xdebug.idekey=PHPSTORM
    xdebug.remote_log=/tmp/xdebug.log


  3. apache sudo service apache2 restart







xdebug . /etc/hosts wsl.host. IP , windows.



, , xdebug.remote_host=127.0.0.1, WSL , 127.0.0.1 linux linux, windows. , PhpStorm :)



, gif- .





-



github C# , Windows . , - Windows .



"" bash , IP /etc/hosts linux WSL — github.



. " ", systemd rc.local wsl . , .



  1. /startup.sh , chmod +x /startup.sh
  2. sudo ( /etc/hosts )
  3. sudo /startup.sh /etc/profile


wsl , /etc/hosts wsl.host linux windows. - , .



wsl , — cat /etc/hosts - :

172.26.64.1 wsl.host



xdebug PhpStorm Windows



WSL PhpStorm



  1. File->Settings->Languages & Framework->PHP









    "From Docker, Vagrant, VM, WSL, Remote"







    WSL







    , xdebug





  2. File->Settings->Languages & Framework->PHP->Debug

    , WSL ( 9002, 9000)















    advanced "Pass required configuration options.."







, — wsl.host 127.0.0.1 .



, .. HTTP ini .



— .





  1. breakpoint index.php
  2. ,















  3. Php Script













,







Nachdem ich verschiedene Quellen, Artikel und Kernbilder durchgesehen hatte, kam ich bei der Arbeit mit PHP zu einem "fast idealen" Arbeitsumfeld. Wenn es etwas gibt, das verbessert / verbessert werden kann, schreibe in die Kommentare oder auf eine andere Art, mich zu kontaktieren .




All Articles