- OS X 版本 12.1
- 流浪者版本 2.2.19
- vagrant machine 有 ubuntu 16.04
- php 7.4
- xdebug v3.0.2
- nginx服务器
我将 xdebug.ini 的配置更改为:
date.timezone = "Europe/Berlin"
short_open_tag = Off
xdebug.idekey=VSCODE
xdebug.mode=debug
xdebug.start_with_request=trigger
xdebug.client_port=9003
xdebug.client_host = 10.254.254.254
xdebug.max_nesting_level = 512
xdebug.log_level=10
xdebug.connect_timeout_ms=600
xdebug.log=/var/log/xdebug/xdebug33.log
xdebug.show_error_trace=true
在 VS 代码中 launch.json :
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003,
"pathMappings": {
"/var/www/":"../../../projects",
},
"log":true
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9003
}
]
}
这是开始调试后的日志输出:
[24787] Log opened at 2021-12-27 09:48:14.979149
[24787] [Step Debug] INFO: Connecting to configured address/port: 10.254.254.254:9003.
[24787] [Step Debug] ERR: Time-out connecting to debugging client, waited: 600 ms. Tried: 10.254.254.254:9003 (through xdebug.client_host/xdebug.client_port) :-(
[24787] Log closed at 2021-12-27 09:48:15.606819
我尝试将此端口添加到 vagrant 文件中,如下所示:
Vagrant.configure(2) do |config|
config.vm.box_url = "file:///Users/test/ubuntu16_php7.4_vagrantbox"
config.vm.box = "baazzbox"
config.vm.provider "virtualbox" do |v|
v.memory = 5120
v.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate//var/www","1"]
v.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/var/www","1"]
end
#config.vm.box = "ubuntu/xenial64"
config.vm.network "private_network", ip: "192.168.33.33"
config.vm.network "forwarded_port", guest: 9003, host: 9003
config.vm.synced_folder "../", "/var/www"
config.vm.provision "fix-no-tty", type: "shell" do |s|
s.privileged = false
s.inline = "sudo sed -i '/tty/!s/mesg n/tty -s \\&\\& mesg n/' /root/.profile"
end
config.vm.provision "file", source: "root", destination: "~"
config.vm.provision :shell, path: "setup_vagrant.sh"
config.vm.box_check_update = false
end
我试图添加和删除这一行:
config.vm.network "forwarded_port", guest: 9003, host: 9003
但它具有相同的输出。
我确实也重新启动了服务,如下所示:
sudo service php7.4-fpm reload
sudo systemctl restart nginx.service