PHP 8.1.14更新后ssh2_connect()未定义函数调用问题求助
PHP 8.1更新后ssh2_connect()函数未定义问题
环境信息
- 系统:Debian GNU/Linux 10(buster)
- PHP版本:8.1.14(cli),编译于2023年1月7日 08:34:41,NTS版本
- libSSH版本:libssh2/1.8.0(来自phpinfo()输出)
- 已执行Apache2手动重启及系统完整重启
问题现象
2023年1月7日更新PHP 8.1后,原本正常运行的脚本抛出错误:Call to undefined function ssh2_connect()。1月5日的PHP版本更新日志未提及SSH相关内容。
查看phpinfo()输出情况:
- 主配置文件为
/etc/php/8.1/apache2/php.ini,文件内未显式启用SSH扩展 - phpinfo()仅显示libSSH版本信息,无完整SSH扩展配置表
- 已解析的额外INI文件均未涉及SSH:
/etc/php/8.1/apache2/conf.d/10-mysqlnd.ini, /etc/php/8.1/apache2/conf.d/10-opcache.ini, /etc/php/8.1/apache2/conf.d/10-pdo.ini, /etc/php/8.1/apache2/conf.d/15-xml.ini, /etc/php/8.1/apache2/conf.d/20-bcmath.ini, /etc/php/8.1/apache2/conf.d/20-bz2.ini, /etc/php/8.1/apache2/conf.d/20-calendar.ini, /etc/php/8.1/apache2/conf.d/20-ctype.ini, /etc/php/8.1/apache2/conf.d/20-curl.ini, /etc/php/8.1/apache2/conf.d/20-dom.ini, /etc/php/8.1/apache2/conf.d/20-exif.ini, /etc/php/8.1/apache2/conf.d/20-ffi.ini, /etc/php/8.1/apache2/conf.d/20-fileinfo.ini, /etc/php/8.1/apache2/conf.d/20-ftp.ini, /etc/php/8.1/apache2/conf.d/20-gd.ini, /etc/php/8.1/apache2/conf.d/20-gettext.ini, /etc/php/8.1/apache2/conf.d/20-iconv.ini, /etc/php/8.1/apache2/conf.d/20-intl.ini, /etc/php/8.1/apache2/conf.d/20-mbstring.ini, /etc/php/8.1/apache2/conf.d/20-mysqli.ini, /etc/php/8.1/apache2/conf.d/20-pdo_mysql.ini, /etc/php/8.1/apache2/conf.d/20-phar.ini, /etc/php/8.1/apache2/conf.d/20-posix.ini, /etc/php/8.1/apache2/conf.d/20-readline.ini, /etc/php/8.1/apache2/conf.d/20-shmop.ini, /etc/php/8.1/apache2/conf.d/20-simplexml.ini, /etc/php/8.1/apache2/conf.d/20-soap.ini, /etc/php/8.1/apache2/conf.d/20-sockets.ini, /etc/php/8.1/apache2/conf.d/20-sysvmsg.ini, /etc/php/8.1/apache2/conf.d/20-sysvsem.ini, /etc/php/8.1/apache2/conf.d/20-sysvshm.ini, /etc/php/8.1/apache2/conf.d/20-tokenizer.ini, /etc/php/8.1/apache2/conf.d/20-xmlreader.ini, /etc/php/8.1/apache2/conf.d/20-xmlwriter.ini, /etc/php/8.1/apache2/conf.d/20-xsl.ini, /etc/php/8.1/apache2/conf.d/20-zip.ini
已尝试操作
- 执行
sudo apt install php-ssh2,提示php-ssh2已是最新版本(1.3.1+0.13-7+020221209.25+debian101.gbp33475c) - 卸载并重装php-ssh2,同时重启Apache2,问题仍未解决
疑问
- 是否需要在主配置文件
/etc/php/8.1/apache2/php.ini中显式添加启用ssh2的语句? - 该如何进一步排查此错误?
内容的提问来源于stack exchange,提问作者jerrygarciuh
相关产品推荐
相关产品推荐

