安装了 libssh2-php,但是使用 php -m 时没有 ssh2

安装了 libssh2-php,但是使用 php -m 时没有 ssh2

我在 Ubuntu 13.10 服务器上使用 php 5.5.3,并希望将 ssh2 与 php 一起使用。因此,我使用以下命令安装了 libssh2-php:apt-get install libssh2-php

安装运行无错误。我在 /etc/php/conf.d 中获得了 ssh2.ini 文件。重新启动了 apache2,甚至重新启动了服务器,但php -m | grep ssh2没有返回任何内容。phpinfo()也没有 ssh 条目 :(

缺什么?

答案1

我找到了解决方案。它与此处描述的 mcrypt 问题相同:https://askubuntu.com/questions/362082/php-is-not-working-well-on-ubuntu-13-10-and-mcrypt-is-missing-in-phpmyadmin

要运行 ssh2,您必须将 ssh2.ini 从 /etc/php/conf.d/ssh2.ini 移动到 /ect/php/mods-available/,然后运行 ​​php5enmod ssh2 并重新启动 apache2

答案2

在 PHP 中启用 SSH2 的正确安装如下,适用于 PHP7.4 和 Word

sudo apt-get install php7.4-ssh2

此命令将在给定的 PHP 中弹出 /etc/php/7.4/mods-available/ssh2.ini,如下所示

sudo service apache2 restart 

或者

sudo systemctl restart apache2

确认

more /etc/php/7.4/mods-available/ssh2.ini
extension=ssh2.so
php -m | grep ssh
ssh2

现在一切正常,并且 ssh2 是 PHP 和 apache2,您也可以从 Web 中的 apache/PHP 代码中验证它,在创建文件 info.php 中/var/www/html/

vi /var/www/html/info.php`

在上述文件中添加以下行

<?php
phpinfo();
?>

然后在网页 ssh2 中搜索代码

相关内容