我已经在Mac上设置了php 5.6和Apache,并安装了IntelliJ和php插件(2016.2)。问题是IDE不想连接到本地服务器。
我在php.ini中添加了以下几行:
[xdebug]
zend_extension=/usr/local/Cellar/php56/5.6.24/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_port = "9000"
当我跑步时,php -v
我得到:
Zend Engine v2.6.0,版权所有(c)1998-2016 Zend Technologies with Xdebug v2.4.0,版权所有(c)2002-2016,作者Derick Rethans
并phpinfo()
显示
xdebug.remote_enable启用开启
xdebug.remote_port 9000 9000
但是IntelliJ显示:
xdebug.remote_enable 0
我已经检查过,我指的是右边php.ini
(编辑文件时出现检查过的路径和其他更改)。
我尝试了所有配置(包括使用IDE密钥),但似乎无济于事。
有没有一种方法可以检查调试是否确实有效(即IDE是否无法识别某些内容或服务器是否有故障),因为此时我不知道问题可能出在哪里。
最好的方法是收集此类调试会话失败的xdebug日志,以了解其含义。有时调试对您不起作用(IDE不会显示任何反应),但xdebug实际上在某个地方连接正常(例如,如下所述的其他服务..)。
您有可能会php-fpm
在计算机上运行(这取决于安装PHP的方式以及用于此目的的工具)。默认情况下,php-fpm使用与xdebug相同的TCP 9000端口。
sudo lsof -nP -iTCP -sTCP:LISTEN
在终端中运行此命令-它应该(在对9000
关键字进行过滤之后)告诉该端口哪些服务已经在侦听。
如果确实是php-fpm
..然后在两个IDE设置+ php.ini中将xdebug端口从默认更改9000
为任何其他端口(例如,9001
或任何其他通常未使用的端口)将解决此问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句