如何在CLI中禁用Xdebug 3的“无法连接”提示信息?
如何在CLI中禁用Xdebug 3的未连接调试提示
这个问题我之前帮朋友处理过,确实挺烦人的——Xdebug 3在CLI下默认会自动尝试连接调试客户端,连不上就不停弹出那个恼人的提示。给你几个实用的解决办法:
单次CLI会话临时解决
如果只是不想在当前命令里看到提示,直接在执行PHP脚本时加环境变量就行:# 完全关闭Xdebug所有功能,一了百了 XDEBUG_MODE=off php your_script.php # 或者只关闭日志输出,保留Xdebug其他功能 XDEBUG_LOG_LEVEL=0 php your_script.php永久修改CLI配置
找到PHP CLI对应的php.ini文件(注意和Web服务器用的可能不是同一个,用php --ini能找到路径),添加或修改以下配置:# 完全关闭调试模式,彻底杜绝提示 xdebug.mode = off # 要是还需要用Xdebug的其他功能(比如性能分析),只关闭日志就行 xdebug.log_level = 0保存后新开个终端窗口就生效了。
保留功能但关闭自动连接
如果你还想用Xdebug的其他功能,只是不想让它自动尝试连接调试客户端,可以这么设置:xdebug.discover_client_host = 0 xdebug.start_with_request = no临时执行的话就用环境变量:
XDEBUG_DISCOVER_CLIENT_HOST=0 XDEBUG_START_WITH_REQUEST=no php your_script.php
简单说下原理:Xdebug 3默认如果xdebug.mode包含debug,且start_with_request=yes,就会自动发起调试连接,失败就会输出提示。上面的方法要么直接关掉调试模式,要么阻止它自动发起连接,要么把日志级别拉到最低,自然就看不到提示了。
内容的提问来源于stack exchange,提问作者Alexei Rayu
相关产品推荐
相关产品推荐

