PHP扩展已安装但未加载

use*_*418 6 php ubuntu nginx libssh2

我正在尝试安装php的ssh2扩展,并且有点困难。该文件在那里,它只是没有加载到php中。

首先,我安装了ssh2:

 aptitude install libssh2-1-dev libssh2-php
Run Code Online (Sandbox Code Playgroud)

(对于它的价值,我在Nginx上运行Ubuntu 12.04。)

我可以看到ssh2是使用modules命令加载的:

php -m |grep ssh2
ssh2
Run Code Online (Sandbox Code Playgroud)

但是,当我运行代码时,出现未定义的函数错误。

在我的phpinfo()脚本中,我可以看到我的php安装程序在此目录中扫描了其他ini文件:/etc/php5/fpm/conf.d。列出该目录的内容,我可以看到我的ssh2.ini在那里:

ls /etc/php5/fpm/conf.d
mysqli.ini  mysql.ini  pdo.ini  pdo_mysql.ini  ssh2.ini  
Run Code Online (Sandbox Code Playgroud)

再次根据phpinfo,将加载其他四个ini文件。SSH2不是。

我还尝试将“ extension = ssh2.so”直接放置在我的php.ini文件-/etc/php5/fpm/php.ini中。是的-我已经重新启动了Nginx服务器。

我还有其他东西吗?

小智 4

  1. display_startup_errors = On在你的 php.ini 中设置
  2. error_log = '/var/log/php-error.log'在你的 php.ini 中设置
  3. 创建错误日志 -touch /var/log/php-error.log

现在,您可以重新启动 php5-fpm 守护进程并在错误日志中查找 ssh2 模块的任何错误