首先确认PHP版本与扩展包名称匹配,再更新软件源并修复依赖,接着安装PHP开发工具及依赖库,必要时通过PECL手动安装扩展,最后检查php.ini配置并重启服务。

如果您在Ubuntu 20.04系统中尝试安装PHP扩展时遇到失败问题,可能是由于软件源配置不当、PHP版本不匹配或依赖包缺失所致。以下是解决此类问题的多种方法:
一、确认PHP版本与正确扩展包名称
Ubuntu 20.04默认仓库中的PHP扩展包命名规则与PHP版本密切相关,必须确保安装的扩展对应当前已安装的PHP版本。
1、运行命令 php -v 查看当前PHP主版本号(如8.1、7.4等)。
2、使用 sudo apt search php- 结合版本号查找可用扩展,例如搜索mysqli扩展可执行 sudo apt search php8.1-mysql。
立即学习“PHP免费学习笔记(深入)”;
3、根据搜索结果安装准确命名的扩展包,避免使用通用名称。
二、更新软件包列表并修复依赖关系
软件源信息过期或依赖损坏可能导致扩展无法安装,需刷新本地索引并修复潜在问题。
1、执行 sudo apt update 更新APT包管理器的索引列表。
2、运行 sudo apt upgrade 升级现有软件包至最新版本。
3、若出现依赖错误,使用 sudo apt –fix-broken install 自动修复中断或损坏的依赖链。
三、安装PHP开发工具与公共依赖库
某些扩展需要编译或依赖底层开发头文件,缺少这些组件会导致安装失败。
1、安装PHP开发包:执行 sudo apt install php-dev 或指定版本如 sudo apt install php8.1-dev。
2、安装常用构建工具:运行 sudo apt install build-essential autoconf automake libtool pkg-config。
3、根据扩展需求安装额外依赖,例如处理图像的GD扩展需运行 sudo apt install libpng-dev libjpeg-dev libfreetype6-dev。
四、通过PECL手动安装扩展
当APT仓库中无所需扩展时,可使用PECL(PHP Extension Community Library)进行源码级安装。
1、确保已安装pear和pecl工具:运行 sudo apt install php-pear。
2、使用命令 pecl list-available 浏览可用扩展或直接搜索特定扩展。
3、安装扩展示例:执行 sudo pecl install redis 安装Redis扩展。
4、安装成功后,将生成的.so文件路径添加到php.ini中,例如添加 extension=redis.so。
五、检查并修改PHP配置文件
即使扩展已安装,若未在PHP配置中启用,仍会显示为不可用。
1、查找当前生效的php.ini文件路径:运行 php –ini 并关注“Loaded Configuration File”行。
2、打开该配置文件:使用编辑器如 sudo nano /etc/php/8.1/cli/php.ini(路径依版本而定)。
3、搜索是否存在以 ;extension= 开头的相关扩展行,移除分号以取消注释。
4、保存更改后重启Web服务,如Apache执行 sudo systemctl restart apache2,或重启PHP-FPM服务。
以上就是如何解决Ubuntu 20.04安装PHP扩展失败的处理方法?的详细内容,更多请关注php中文网其它相关文章!


