我想我会尝试使用nginx而不是Apache,看看它是如何工作的,我已经启动并运行了,但我不能为了生命的缘故弄清楚如何让PhpStorm捕获传入的xdebug连接.当我运行Apache时,它运行得很好.
通常,你会在PhpStorm中获得一个“传入连接”窗口 – 这个窗口现在闪耀着它的缺席 – 是的;我已经阅读了*上的每一个PhpStorm / Xdebug问题,但都没有解决我的问题.
组态:
操作系统:OSX Mavericks
PhpStorm版本:7.1
Xdebug版本:2.2.5
请注意,我正在通过php-fpm运行nginx和PHP,它正在按预期工作.我已经指出了与php-fpm运行到PhpStorm相同的PHP文件,它成功地找到了Xdebug作为调试器.
由于php-fpm像Xdebug一样运行端口9000,我已将其更改为9900和9001(尝试过两者)并确保检查我的phpinfo()以查看服务器已更新php.ini配置与它和我我检查过我已经更新了PhpStorm中的Xdebug端口.我还在PhpStorm中启用了“开始侦听调试连接”.
来自php.ini的Xdebug配置:
[xdebug]
zend_extension = /usr/local/Cellar/php55/5.5.14/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
xdebug.auto_trace=0
xdebug.default_enable=1
xdebug.idekey="PHPSTORM"
xdebug.profiler_enable=0
xdebug.profiler_enable_trigger=0
xdebug.profiler_output_dir="/tmp"
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_mode=req
xdebug.remote_port=9001
如上所述 – 当我在浏览器中加载phpinfo()并且在PhpStorm中设置了正确的端口时,会加载xdebug.
谢谢你的帮助.
解决方法:
我不能强调其中一个评论的重要性 – “别忘了为xdebug设置cookie”.
我把一切都搞定了,因此我的调试器仍然无法附加.
我可以做的一个建议是安装xdebug helper chrome扩展.获得它后,从PhpStorm开始调试,导航到要调试的页面,然后单击地址栏中的“bug”图标打开扩展中的调试设置.