udentu升级后xdebug无法正常工作

时间:2016-01-04 16:05:43

标签: php eclipse ubuntu xdebug

今天我将ubuntu 14.10升级到15.04并且xdebug不再工作了。我使用eclipse Luna Service Release 2。

我尝试通过pecl,apt-get重新安装xdebug,甚至尝试按照http://xdebug.org/wizard.php指令手动安装(粘贴我的phpinfo()输出)。

我在/opt/lampp目录中有xampp。 我已经为" zend_extension"尝试了几个地点。在/opt/lampp/etc/php.ini中,例如zend_extension=/usr/lib/php5/20131226/xdebug.sozend_extension =/opt/lampp/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so

当我在eclipse上点击调试时,浏览器接收到命令,并且参数?XDEBUG_SESSION_START = ECLIPSE_DBGP& KEY =包含在url中,但执行不会在任何断点上停止。

当我运行phpinfo()时,xdebug未显示为已安装的模块。

任何提示?

我在发布答案后删除了phpinfo()输出以便澄清。

2 个答案:

答案 0 :(得分:4)

最后我找不到任何解决方案,所以我不得不删除所有的灯包,然后我按照本教程重新安装了所有的独立模块:http://www.unixmen.com/how-to-install-lamp-stack-on-ubuntu-15-10/,然后我这样做安装xdebug:

1.-安装PHP的xdebug扩展

$ sudo apt-get install php5-xdebug

2.-检查“xdebug.so”模块的位置,该模块保存在“/ usr / lib / php5 / 20131226”下,其中数字取决于PHP版本。

3.-安装使用以下行创建配置文件“/etc/php5/mods-available/xdebug.ini”(否则,创建一个):

zend_extension=xdebug.so

注意:在以前的版本中,您需要指定完整路径文件名,例如“zend_extension = / usr / lib / php5 / 20121212 / xdebug.so”。 在“xdebug.ini”中包含以下行以启用Eclipse PDT的远程调试:

xdebug.remote_enable = On
xdebug.remote_port = 9000
xdebug.remote_host = 127.0.0.1

回想一下,Apache加载PHP配置文件“/etc/php5/apache2/php.ini”和“/etc/php5/apache2/conf.d/*.ini”。要启用上述xdebug配置文件,请在“/etc/php5/apache2/conf.d”中创建以下符号链接:

$ cd /etc/php5/apache2/conf.d
$ sudo ln -s ../../mods-available/xdebug.ini 20-xdebug.ini
$ ls -l
lrwxrwxrwx 1 root root   31 Sep 11 19:42 20-xdebug.ini -> ../../mods-available/xdebug.ini

4.-检查PHP配置文件“/etc/php5/apache2/php.ini”以了解以下设置:

; Turn on the error display for development system, 
; but not for production system.
display_errors = On

; Format error in HTML
html_errors = On

5.-重启Apache2:

$ sudo service apache2 restart

它就像一个魅力

答案 1 :(得分:0)

目前Xdebug(请仅使用uptil Xdebug 2.6,因为更高版本的调试存在一些问题);最多只能使用php 7.2(即低于7.3)。因此,如果您安装了其他任何版本(例如php 7.3或7.4),那么您还必须在当前php版本的旁边安装php 7.2(主要是因为现在默认情况下通过apt安装了最新版本)。然后在替代方案之间进行更新。

要将PHP 7.0设置为默认值,请运行

update-alternatives --set php /usr/bin/php7.0 要将PHP 7.2设置为默认值,请运行

update-alternatives --set php /usr/bin/php7.2 要将PHP 7.3设置为默认值,请运行

update-alternatives --set php /usr/bin/php7.3 要将PHP 7.4设置为默认值,请运行

update-alternatives --set php /usr/bin/php7.4 在将Apache配置为使用PHP 7.2之前,我们需要通过键入

来禁用新(或旧)版本的PHP。

a2dismod php7.4 现在,使用以下命令启用新安装的PHP 7.2版本:

a2enmod php7.2 重新启动Apache Web服务器以使更改生效:

sudo systemctl重新启动apache2