无法在linux上找到xdebug.so

use*_*612 13 php ubuntu xdebug

我在使用php7和Apache2在ElementaryOS(Ubuntu 16.04.2)上运行xdebug时遇到了一些问题.

我装了它sudo apt-get install php-xdebug.安装没有报告任何错误.我已经添加

xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_connect_back=1 ; Not safe for production servers
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_autostart=true
Run Code Online (Sandbox Code Playgroud)

/etc/php/7.0/apache2/php.ini.

我还需要添加xdebug.so文件位置,如zend_extension="/path/to/xdebug.so".但是,我在安装后无法找到xdebug.so.

有没有人知道xdebug.so在哪里,或者自php7.0发布以来更改了指令.大多数说明/帮助似乎是针对php5在线.

谢谢.

use*_*612 19

检查xDebug是否已安装.

php -m
Run Code Online (Sandbox Code Playgroud)

locate xdebug.so

/usr/lib/php/20151012/xdebug.so我的回报,但20151012将来可能会改变.

  • 你必须`sudo updatedb`如果`locate`没有返回任何东西,你刚刚安装了`locate`. (13认同)

Pau*_*tor 6

对于新版本,只需添加 xdebug 文件名,例如:

zend_extension=xdebug.so

xdebug.default_enable = 1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
...
Run Code Online (Sandbox Code Playgroud)

如果它不起作用,请使用 Linux find 命令,如下所示:

find / -name "xdebug.so"

这个命令有什么作用?

  • 查找 = 只是查找
  • / = 在 / (all) 中的所有目录中
  • -name "xdebug.so" = 名称等于 xdebug.so

  • 根据官方xdebug安装文档(https://xdebug.org/docs/install),不包含xdebug.so的完整路径会导致问题。*注意:我不知道这是否仅适用于使用 PECL 安装 xdebug* **注意:您应该忽略任何将“extension=xdebug.so”添加到 php.ini 的提示 — 这会导致问题。** (2认同)

小智 5

使用 phpinfo() 创建一个文件。找到项目extension_dir。在那里您将看到 xdebug.so 所在的位置。我的是:

/usr/local/lib/php/extensions/no-debug-non-zts-20170718
Run Code Online (Sandbox Code Playgroud)