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 . .
- WSL .
/home/user/projects - ( GIT).
/home/user/projects/test -
\\wsl$\Ubuntu"Ubuntu" — .\\wsl$

- PhpStorm

- ( , xdebug)

- Automatic upload

- WSL
— . = . . , rsync , . , — :)
Apache, . , , php-fpm nginx — .
xdebug
xdebug . .
xdebug
sudo apt-get php-xdebug
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
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 :)
-
github C# , Windows . , - Windows .
"" bash , IP /etc/hosts linux WSL — github.
. " ", systemd rc.local wsl . , .
wsl , /etc/hosts wsl.host linux windows. - , .
wsl , — cat /etc/hosts - :
172.26.64.1 wsl.host
xdebug PhpStorm Windows
WSL PhpStorm
File->Settings->Languages & Framework->PHP
"From Docker, Vagrant, VM, WSL, Remote"
WSL
, xdebug

File->Settings->Languages & Framework->PHP->Debug
, WSL ( 9002, 9000)
advanced "Pass required configuration options.."

, — wsl.host 127.0.0.1 .
, .. HTTP ini .
— .
- breakpoint index.php
- ,
-
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 .