我尝试使用 PhpStorm 7.0 设置 Xdebug (2.2.3),但我无法像过去那样调出逐步调试控制台。我用来设置的指南是:
- https://www.jetbrains.com/phpstorm/webhelp/configuring-xdebug.html
- http://blog.jetbrains.com/webide/2011/02/zero-configuration-debugging-with-xdebug-and-phpstorm-2-0/
我知道 Xdebug 扩展本身正在工作,因为在页面加载时正在创建 cachegrind.out.3280 文件(需要 12Mb 的所有脚本和变量/值)。我在 php.ini(php 版本 5.4.12)中的设置是:
zend_extension="c:/wamp/bin/php/php5.4.12/zend_ext/php_xdebug-2.2.3-5.4-vc9-x86_64.dll"
xdebug.profiler_output_dir="c:/wamp/tmp"
xdebug.profiler_output_name="cachegrind.out.%p"
xdebug.profiler_enable=1
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.idekey=xdebug
xdebug.remote_connect_back=1
xdebug.remote_host=dashboard.dev
设置断点后,打开 Xdebug chrome 扩展,点击在 PhpStorm 中收听 Xdebug 并刷新,我得到了 Incoming Connection from Xdebug 对话框:
但是,当我单击接受时,对话框消失并且什么也没有发生。
如果我然后转到 PhpStorm 中的 Settings / PHP / Servers,我会看到一个新条目已创建:
只有删除添加的条目,我才能在刷新页面时再次显示传入连接对话框。我注意到端口设置为 80,所以想知道这是否正确,因为 Xdebug 扩展设置为在端口 9000 上运行;当我单击“验证远程环境”选择部署服务器,然后“验证”时,我得到:没有加载调试扩展。所以我假设问题与它的设置方式有关。