ubuntu升级后xdebug无法工作


xdebug not working after ubuntu upgrade

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

我试着通过pecl、apt-get甚至手动安装重新安装xdebughttp://xdebug.org/wizard.php说明(粘贴我的phpinfo()输出)。

我有examplep,在/opt/lampp目录中。我在/opt/lampp/etc/php.ini中尝试了几个"zend_extension"的位置,如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()输出以进行澄清。

最后我没有找到解决方案,所以我不得不删除所有的灯包,并按照本教程将所有组件作为独立模块重新安装: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"answers"/etc/php5/apache2/conf.d/*.ini"。要启用上述xdebug配置文件,请在"/etc/php5/6apache2/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

它的工作原理就像一个魅力

目前Xdebug(请仅使用uptl Xdebug 2.6,因为后来的版本在调试方面存在一些问题);只能工作到php7.2(即小于7.3)。因此,如果你安装了任何其他版本,如php7.3或7.4,那么你也必须在安装当前php版本的同时安装php7.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配置为使用PHP7.2之前,我们需要通过键入来禁用新(或旧)版本的PHP

a2dismod php7.4

现在使用以下命令启用新安装的PHP7.2版本:

a2enmod php7.2

重新启动Apache web服务器以使更改生效:

sudo systemctl restart apache2