我正在尝试使用 Xdebug 和 PhpStorm 进行调试。我过去已经设置过好几次了,没有太大问题。但这一次事情进展并不顺利。
我当前在 php.ini 中的配置如下:
zend_extension = "c:\xampp2\php\ext\php_xdebug.dll"
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.remote_host=127.0.0.1
xdebug.remote_cookie_expire_time=3600
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.idekey=PHPSTORM
xdebug.remote_log="c:\xampp2\tmp\xdebug.txt"
xdebug.remote_autostart=1
添加 xdebug.remote_autostart
确保每当从 CLI 运行脚本时都会建立连接。但通过 Apache 调用脚本时它仍然不起作用。
我检查了 Xdebug 日志,没有发现任何异常情况:https://pastebin.com/4rK8pJqt
最明显的原因是 CLI 和 Apache 有单独的 php.ini 文件,但事实并非如此。我只有一个 php.ini 文件,并且我已经验证 Xdebug 设置在浏览器的 phpinfo 中显示得很好。请参阅下面的屏幕截图。
是否有任何特定设置可能导致 Xdebug 无法连接到 PHPStorm?或者有人知道 Xdebug 或 PhpStorm 中可能导致此问题的任何错误吗?
最佳答案
我已经发现了这个问题。无论如何。
禁用“通过未注册的服务器配置忽略外部连接”后,它开始工作。然后我查看了 PhpStorm 中的服务器配置,看起来绝对没问题,所以我再次尝试禁用此设置,效果也很好。
因此,要解决我的问题,我必须:
- 转到文件 -> 设置。
- 转到语言和框架 -> PHP -> 调试。
- 取消选中“通过未注册的服务器配置忽略外部连接”。
- 运行脚本以从浏览器触发 Xdebug。
- 再次转到设置并再次启用相同的设置。
现在一切都很顺利!
关于phpstorm - Xdebug 与 PhpStorm 在 CLI 中工作正常,而不是在浏览器中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47222927/