【问题标题】:Can't connect xdebug to PhpStorm无法将 xdebug 连接到 PhpStorm
【发布时间】:2016-10-01 09:37:05
【问题描述】:

将 xdebug 连接到 PhpStorm 2016.1 时遇到大问题

Web 服务器验证显示一切正常。

php信息:

xdebug support  enabled
Version 2.4.0
IDE Key PHPSTORM
Supported protocols Revision
DBGp - Common DeBuGger Protocol $Revision: 1.145 $
Directive   Local Value Master Value
xdebug.auto_trace   Off Off
xdebug.cli_color    0   0
xdebug.collect_assignments  Off Off
xdebug.collect_includes On  On
xdebug.collect_params   0   0
xdebug.collect_return   Off Off
xdebug.collect_vars Off Off
xdebug.coverage_enable  On  On
xdebug.default_enable   On  On
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.extended_info    Off Off
xdebug.file_link_format no value    no value
xdebug.force_display_errors Off Off
xdebug.force_error_reporting    0   0
xdebug.halt_level   0   0
xdebug.idekey   PHPSTORM    PHPSTORM
xdebug.max_nesting_level    256 256
xdebug.max_stack_frames -1  -1
xdebug.overload_var_dump    On  On
xdebug.profiler_aggregate   Off Off
xdebug.profiler_append  Off Off
xdebug.profiler_enable  On  On
xdebug.profiler_enable_trigger  Off Off
xdebug.profiler_enable_trigger_value    no value    no value
xdebug.profiler_output_dir  /home/dell/xdebug   /home/dell/xdebug
xdebug.profiler_output_name cachegrind.out.%p   cachegrind.out.%p
xdebug.remote_addr_header   no value    no value
xdebug.remote_autostart Off Off
xdebug.remote_connect_back  On  On
xdebug.remote_cookie_expire_time    3600    3600
xdebug.remote_enable    On  On
xdebug.remote_handler   dbgp    dbgp
xdebug.remote_host  localhost   localhost
xdebug.remote_log   no value    no value
xdebug.remote_mode  req req
xdebug.remote_port  9000    9000
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   Off Off
xdebug.trace_enable_trigger Off Off
xdebug.trace_enable_trigger_value   no value    no value
xdebug.trace_format 0   0
xdebug.trace_options    0   0
xdebug.trace_output_dir /tmp    /tmp
xdebug.trace_output_name    trace.%c    trace.%c
xdebug.var_display_max_children 128 128
xdebug.var_display_max_data 512 512
xdebug.var_display_max_depth    3   3

php.ini

zend_extension = /usr/lib/php5/20131226/xdebug.so
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.idekey=PHPSTORM
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/home/dell/xdebug
xdebug.remote_connect_back=1

我在/home/dell/projects/dostawca/ 下有项目文件,并在/var/www/ 中创建了符号链接

部署服务器(到位)

PHP 下的服务器->Servers

我已经使用“PHPSTORM”键和服务器“dostawca.local”配置了“PHP 远程调试”

在当前情况下,我仍然收到“等待带有 ide 键 'PHPSTORM' 的传入连接。 我还尝试了 xdebug 和 PhpStorm 的许多不同配置/选项,但没有任何帮助(有时我得到连接成功但没有显示任何帧,在其他情况下我得到“无法评估表达式 'isset($_SERVER['PHP_IDE_CONFIG'] )'")。

直接在/var/www/projecthttp://localhost/project 上且没有虚拟主机的新项目也不起作用

不知道怎么回事

【问题讨论】:

  • 1) 提供通过浏览器捕获的phpinfo() 输出的xdebug 部分; 2) 为此类不成功的调试会话收集 xdebug 日志并将其发布在此处。 3) 你的网络服务器是什么 (Apache/nginx/etc) 4) 你的网络服务器如何运行 PHP (例如 php-fpm/apache 模块等)
  • 1) xdebug 部分在我的帖子中 3) Apache 4) 我通过 apt 安装它,所以我认为它是 apache 模块,对吧?在进程中我只有 apache2 2)我如何收集?
  • 1) 看起来像是在终端中捕获的,而不是通过浏览器捕获的... 2) xdebug.remote_log ?? 4)检查xdebug日志后可能需要回来。
  • 2) 我设置了这个但是创建的文件夹是空的。我也尝试“nc localhost 9000”,但它也是空的(或者这个命令是错误的?)
  • 它应该是文件而不是文件夹:xdebug.org/docs/all_settings#remote_log 一些 Linux 发行版将在 CLI(终端)和 Apache 中使用不同的 php.ini——也许你编辑错了?无论如何:xdebug 日志是必须在这里看到的

标签: php phpstorm xdebug


【解决方案1】:

您已经在端口 9000 上创建了一个 SSH 隧道,以便 xdebug 工作。相应地配置您的身份验证选项(此隧道使用私钥):

ssh -R 9000:localhost:9000 user@127.0.0.1 -i /path/to/private_key -p 22

同时确保在运行调试会话时监听传入的调试连接。

【讨论】:

    猜你喜欢
    • 2018-04-27
    • 2018-06-03
    • 2015-08-03
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 2015-09-25
    • 2020-12-04
    相关资源
    最近更新 更多