Xdebug3不触发

问题描述 投票:0回答:1

我正在尝试为远程 Web 服务器设置

Xdebug
。这个想法是使用从开发机器到开发服务器的
ssh
隧道。该系统是 Debian Bookworm LXC 容器。网络部分显然有效:

# establish ssh to web server
dev@client:~$ ssh -R host.example.com:9003:localhost:9000 site
site@host:~$ php -i | grep xdebug
# has lots of settings of course, among those:
xdebug.client_host => localhost => localhost
xdebug.client_port => 9003 => 9003
# fire up dbgpClient on client
dev@client:~$ dbgpClient -p 9000
# test for connection
site@host:~$ telnet localhost 9003
# yields Connect from [::1]:54680 in dbgpClient

因此,开发客户端上的端口 9000 上的

dbgpClient
可以看到连接到 Web 服务器上的端口 9003。但PHP不触发客户端:

# fire up dbgpClient on client
dev@client:~$ dbgpClient -p 9000
# run interactive PHP on server
site@host:~$ export XDEBUG_SESSION=1
site@host:~$ php -a -dxdebug.start_with_request=yes -dxdebug.log=/tmp/xdebug.log
Interactive shell
php > echo 1;
1
php > ^C
site@host:~$ cat /tmp/xdebug.log
site@host:~$ 

当然,

dbgpClient
中没有连接尝试。使用简单的测试脚本而不是交互式 shell 会产生相同的结果。运行测试后,
telnet
仍然像以前一样连接。

我通读了 Xdebug 的无数配置选项,但找不到任何结论性的东西。但我必须承认,我几乎不理解四分之一的选项,而且这是我第一次尝试设置 Xdebug-3。所以,对于巫师来说 - 这就是完整的

php -i | grep xdebug
:

/etc/php/8.2/cli/conf.d/20-xdebug.ini,
xdebug
Support Xdebug on Patreon, GitHub, or as a business: https://xdebug.org/support
Enabled Features (through 'xdebug.mode' setting)             
'xdebug://gateway' pseudo-host support => yes
'xdebug://nameserver' pseudo-host support => yes
xdebug.auto_trace => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.cli_color => 0 => 0
xdebug.client_discovery_header => HTTP_X_FORWARDED_FOR,REMOTE_ADDR => HTTP_X_FORWARDED_FOR,REMOTE_ADDR
xdebug.client_host => localhost => localhost
xdebug.client_port => 9003 => 9003
xdebug.cloud_id => no value => no value
xdebug.collect_assignments => Off => Off
xdebug.collect_includes => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.collect_params => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.collect_return => Off => Off
xdebug.collect_vars => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.connect_timeout_ms => 200 => 200
xdebug.coverage_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.default_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.discover_client_host => Off => Off
xdebug.dump.COOKIE => no value => no value
xdebug.dump.ENV => no value => no value
xdebug.dump.FILES => no value => no value
xdebug.dump.GET => no value => no value
xdebug.dump.POST => no value => no value
xdebug.dump.REQUEST => no value => no value
xdebug.dump.SERVER => no value => no value
xdebug.dump.SESSION => no value => no value
xdebug.dump_globals => On => On
xdebug.dump_once => On => On
xdebug.dump_undefined => Off => Off
xdebug.file_link_format => no value => no value
xdebug.filename_format => no value => no value
xdebug.force_display_errors => Off => Off
xdebug.force_error_reporting => 0 => 0
xdebug.gc_stats_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.gc_stats_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.gc_stats_output_name => gcstats.%p => gcstats.%p
xdebug.halt_level => 0 => 0
xdebug.idekey => no value => no value
xdebug.log => no value => no value
xdebug.log_level => 7 => 7
xdebug.max_nesting_level => 256 => 256
xdebug.max_stack_frames => -1 => -1
xdebug.mode => develop => develop
xdebug.output_dir => /tmp => /tmp
xdebug.overload_var_dump => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.profiler_append => Off => Off
xdebug.profiler_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_enable_trigger => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_enable_trigger_value => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_output_name => cachegrind.out.%p => cachegrind.out.%p
xdebug.remote_autostart => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_connect_back => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_host => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_log => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_log_level => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_mode => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_port => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_timeout => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.scream => Off => Off
xdebug.show_error_trace => Off => Off
xdebug.show_exception_trace => Off => Off
xdebug.show_local_vars => Off => Off
xdebug.show_mem_delta => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.start_upon_error => default => default
xdebug.start_with_request => default => default
xdebug.trace_enable_trigger => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.trace_enable_trigger_value => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.trace_format => 0 => 0
xdebug.trace_options => 0 => 0
xdebug.trace_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.trace_output_name => trace.%c => trace.%c
xdebug.trigger_value => no value => no value
xdebug.use_compression => 0 => 0
xdebug.var_display_max_children => 128 => 128
xdebug.var_display_max_data => 512 => 512
xdebug.var_display_max_depth => 3 => 3

我还能做些什么来解决这个问题?

php xdebug xdebug-3
1个回答
0
投票

Xdebug 未触发,因为您尚未启用调试器。

在 phpinfo() 输出中显示:

xdebug.mode => develop => develop

需要设置为

debug
develop,debug
。您可以通过多种方式在命令行上执行此操作:

  • 也设置
    -dxdebug.mode=develop,debug
  • xdebug.mode=develop,debug
    添加到您的
    php.ini
    文件(或
    90-xdebug.ini
    文件,如果有的话)
  • 在命令行上设置
    XDEBUG_MODE=debug,develop
    环境变量,就像设置
    XDEBUG_SESSION=1
  • 一样
© www.soinside.com 2019 - 2024. All rights reserved.