Nedávno jsem u jednoho projektu po dlouhé době přešel na novější verzi PHP, jmenovitě na 7.4 a rovnou si udělal i update Xdebugu na verzi 3. Projekt se rozběhl v pořádku Xdebug nikoli. Několikrát jsem kontroloval nastavení PHPStormu, vše se zdálo v pořádku, PHP interpret i xdebug v posledních verzích.
Google mi pravděpodobný problém ihned nastínil. Xdebug 3 totiž prošel celkem velkou úpravou jeho konfiguračních souborů. Pěkné shrnutí je přímo v jeho dokumentaci.
Pokud si zobrazíte $php -i |grep xdebug u spousty konfigurace pokud si ji někde ve svém projektu přetěžujete uvidíte xdebug.remote_port => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3).
První zásadní je změna portu kde Xdebug naslouchá a to jak kliče xdebug.remote_port => xdebug.client_port tak i samotného výchozího portu 9000 => 9003 a xdebug.remote_host => xdebug.client_host což je důležité pokud používáte svoje projektu v Dockeru.
Několik dalších nastavení jako:
xdebug.remote_enable=1
xdebug.default_enable=0
xdebug.profiler_enable=0
xdebug.auto_trace=0
xdebug.coverage_enable=0
se nyní shrnuje pod jeden klíč xdebug.mode=debug.
Všechny změny klíčů i dalších nastavení najdete ve výše zmíněné oficiální dokumentaci xdebugu.