Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么xDebug不能在Ubuntu上与Php Storm一起工作?_Php_Apache_Phpstorm_Ubuntu 14.04_Xdebug - Fatal编程技术网

为什么xDebug不能在Ubuntu上与Php Storm一起工作?

为什么xDebug不能在Ubuntu上与Php Storm一起工作?,php,apache,phpstorm,ubuntu-14.04,xdebug,Php,Apache,Phpstorm,Ubuntu 14.04,Xdebug,我已经安装了xdebug并尝试将其与phpstorm一起使用。但它不希望工作正常 我尝试将以下设置设置到/etc/php5/apache/php.ini和/etc/php5/mods available/xdebug.ini: zend_extension="xdebug.so" ; Debugging xdebug.remote_enable= 1 xdebug.remote_port= 9000 xdebug.idekey = "PHPSTORM" ; Var-Display xdebu

我已经安装了xdebug并尝试将其与phpstorm一起使用。但它不希望工作正常

我尝试将以下设置设置到
/etc/php5/apache/php.ini
/etc/php5/mods available/xdebug.ini

zend_extension="xdebug.so"

; Debugging
xdebug.remote_enable= 1
xdebug.remote_port= 9000
xdebug.idekey = "PHPSTORM"

; Var-Display
xdebug.var_display_max_children = 2048
xdebug.var_display_max_data = 8192
xdebug.var_display_max_depth = 99
xdebug.max_nesting_level = 3000
我认为'xdebug.ini应该是这个设置的正确位置

然后,我用
sudo服务apache2 restart
重新启动了apache,并打开了一个页面,在那里我打印出
phpinfo()
。但正如您在屏幕截图上看到的,它始终显示
netbeansxdebug


我能做什么?我在整个系统中搜索了其他php.ini文件,但没有任何其他文件。

我的问题的解决方案

我发现在我的浏览器中,即使在重启系统后(显然),cookie
XDEBUG\u SESSION=netbeansxdebug
也会导致这个问题

删除它并重新加载我的
phpinfo()
页面后,我的新
idekey
PHPSTORM
,现在xdebug可以与我的ide一起工作


我认为问题在于我安装了xdebug,并在没有设置的情况下用我的ide尝试了它-所以
idekey
的值是
netbeansxdebug
值。一旦设置了cookie,只要cookie还活着,它就会忽略php设置。

这对我来说是可行的

zend_extension="/usr/lib/php5/20121212/xdebug.so"
[xdebug]
xdebug.remote_enable = on
xdebug.profiler_enable = off
xdebug.show_local_vars=0
xdebug.max_nesting_level = 500
但是首先运行以下命令来定位
xdebug.so

locate xdebug.so
并相应地更改以下行

zend_extension="/usr/lib/php5/20121212/xdebug.so"
通常会发生这种情况(如果xdebug.so的路径正确),因为remote_enable设置为off

xdebug.remote_enable=on

可能会解决这个问题。

很明显,在过去的某个时候,您使用netbeans xdebug做了一些事情。您是否检查了“已解析的其他ini文件”部分中提到的ini文件?我甚至没有安装netbeans。但我认为这一定是一个默认值。我已经发布了解决方案。