
Visual Studio Code beállítása a távoli kód szerkesztéséhez
- Legyél készen a WSL alatti fájlrendszerrel, másold fel az Apache + PHP + MariaDB ( MySQL ) rendszer egy könyvtárába a szerkesztendő fájlokat.
- Telepítsd a Visual Studió Code alá a WSL ( korábbi nevén Remote - WSL ) kiterjesztést. Ennek hatására a Visual Studio Code -ból meg tudod nyitni a WSL-ben a Linux fájlrendszerből egy mappát, vagyis lesz egy projekted. Például innen:
/var/www/fw3.com
. Ha a Remote Development csomagot telepíted, abban benne van a WSL is. - A teljesség kedvéért a VSC-re telepítsd a PHP Extension Pack modult is, ami által tudod a PHP szerkesztés és debuggolás teljes eszköztárát használni.
Érdemes a Linux fájlrendszerét elérni Windows alól root userként. Akkor a Visual Studio Code-ban a File/Open folder
menüpontban meg kell keresni a \\wsl$\Debian\var\www\html
foldert és azzal kell megnyitni a Visual Studio Code-ot.
XDEBUG használata remote gépen
Xdebug telepítése a Linuxra
Először is telepíteni a kell a WSL alatti Linuxon a PHP-hoz az xdebug extension-t.
apt-get install php8.4-xdebug
Ezután újra kell indítani a php8.4-fpm
-et, esetleg az Apache-ot is.
systemctl restart php8.4-fpm
systemctl restart apache2
Létrejön az /etc/php/8.4/mods-available/xdebug.ini
fájl, amely az xdebux beállításait fogja tartalmazni.
Hozd létre az alábbi tartalmat:
zend_extension=xdebug.so ; Engedélyezi az xdebug használatát
xdebug.start_with_request= yes ; A böngésző kérésére indul az xdebug
xdebug.mode = debug ; Csak debuggolásra akarom használni a kiterjesztést
xdebug.log = /var/log/xdebug.log ; Naplózni akarom az xdebug üzeneteit
xdebug.client_host = 127.0.0.1 ; Az xdebug kliense (vagyis ahonnan elérem) a localhost legyen
xdebug.client_port = 9003 ; Ezt a portot használom az xdebug3 esetén.
xdebug.remote_log = /var/log/xdebug.log
xdebug.log_level = 3 ; A logolás szintjét állíthatom be
Úgy tudod kipróbálni, hogy a megadott könyvtárba készítesz egy egyszerű php fájlt, mondjuk xdebug.php néven. A tartalma az alábbi:
<?php
xdebug_info();
phpinfo();
?>
Ennek hatására felül bejön az Xdebug panelja és a remote szerveren telepített PHP összes lényeges információja.
Ahhoz, hogy a Linux rendszeren működjön a távoli kód végrehajtás érdemes a tűzfalon beállítani egy szabályt a 9003-as portra vagy letiltani a tűzfalat. Ez fejlesztői gépen nem olyan nagy veszély.
ufw disable
Xdebug a böngészőre
A fentieken kívül kell telepíteni a böngészőmre egy plugint, ami az xdebug kérését indítja el. Firefox esetén az Xdebug Helper
t javaslom, Chrome esetén Xdebug for Chrome
extensiont. Azt érdemes telepíteni, amelynek sok felhasználója van...
Beállítani valójában semmit sem kell. Használatkor a kis bogárnak zöldnek kell lennie
Xdebug a VSC-ben
Mivel korábban telepítetted a VSC alá a PHP Extension Pack-et, ezért van a gépeden egy kiterjesztés, amely a VSC-ben kezeli a távoli kéréseket. Ha nem telepítetted, akkor rajta, most telepítsd.
A VSC-ben megnyomod a Run/Start Debugging menüpontot és a mellette lévő setting ikont vagy Run / Open Configurations menüt.... Szóval konfigurálni kell a debuggolást. Rákérdez arra, hogy elkészíted-e vagy megnyitja a launch.json
fájlt. ez a projektedhez tartozó fájl lesz. az alábbi konfigurációt kell betolni az elejére
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003,
"stopOnEntry": false,
"log": true,
"pathMappings": {
"/var/www/fw3.com": "${workspaceFolder}"
}
},
A beállítások magyarázatai:
- "name": "xxxxxx" - Ez fog megjelenni a debugger lehetőségek listájában
- "Request": "launch" - A böngésző hívására indul el.
- "port" : 9003 - Ezen a porton kommunikál VSC és az xdebug
- "stopOnEntry": true/false - Megálljon-e a VSC az első php kódsorán
- "log": true - Legyen-e logolás
- "pathMappings": =>"${workspaceFolder}" - A megadott mappa a Linuxon megfeleljen a VSC munkaterületének. Így fogja megtalálni a hívásoknál a megfelelő fájlokat.
Még lehetséges az alábbi beállítás is a VSC-ben.
Amikor PHP kódot szerkesztek, akkor a PHP csomagoknak kell egy olyan hely, ahol elérik a PHP.EXe fájlt, ezért a Windowson telepíteni érdemes egy xamp-ot. A xamp-on belül pedig egy PHp folder is létrejön. ezt a könyvtárat meg kell adni a Visual Studio Code-nak. Ehhez a File / Preferences / Settings menüben meg kell nyitni a VSC setting.json fájlját. Rá kell keresni a php.exe kifejezésre és két sort kapunk Ezt a két sort a php.exe aktuális elérési útjával kell módosítanunk.
"php.executablePath": "c:/xémpp/php/php.exe",
.
"php.debug.executablePath": "c:/xampp/php/php.exe",