我有一个带有cPanel WHM的VPS,我正在尝试启用XDebug。我通过转到WHM -> Software -> Module Installers -> PHP Pecl -> Manage
安装了扩展程序,并通过查看我的phpinfo()
页面确认已安装该扩展程序。
下一步是在我的php.ini文件中启用XDebug,但我有点困惑我应该怎么做。
在/usr/local/lib
中查看php.ini,我在底部看到这一行:
zend_extension="/usr/local/Zend/lib/Guard-6.0.0/php-5.4.x/ZendGuardLoader.so"
然而,在WHM中 - >服务配置 - > PHP配置编辑器,有一个" zend_extension"具有此值的选项:
/usr/local/IonCube/ioncube_loader_lin_5.4.so, /usr/local/Zend/lib/Guard-6.0.0/php-5.4.x/ZendGuardLoader.so
所以我的问题是,我应该如何添加XDebug的路径:
/usr/local/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so
到php.ini?我看到了三种方法,我不知道哪种方法是正确的:
哪种方式正确?
答案 0 :(得分:8)
高度依赖于PHP配置(./configure
)。 PHP将查看xdebug.so
扩展名的默认扩展路径;在这种情况下,您不需要指定任何路径:
zend_extension = xdebug.so
关于新行和逗号,我更喜欢新行,因为它可以让以后更容易删除扩展。我的php.ini
看起来像这样(例子):
extension = memcached.so
extension = zopfli.so
zend_extension = opcache.so
zend_extension = xdebug.so
请注意字母顺序。
答案 1 :(得分:1)
您可以像下面这样在文件的底部添加:
zend_extension="/absolute/path/to/xdebug.so"
在我的情况下,我将其放入
zend_extension = /usr/lib64/php/modules/xdebug.so
但是 如果要同时使用Xdebug和OPCache,则必须在用于OPCache的行之后有用于Xdebug的zend_extension行。否则,它们将无法正常工作。 参见:answer