AlmaLinux 9(LAMP环境)下指定PHP7.4安装Horde Webmail失败的问题求助
AlmaLinux 9(LAMP环境)下指定PHP7.4安装Horde Webmail失败的问题求助
嘿,我完全懂你现在的头疼——之前装Horde碰壁放弃,这次专门给mail.domain.com配置了PHP7.4,结果跑pear install的时候还是默认用上了PHP8.0,一堆版本不兼容的报错直接把安装卡壳了,太闹心了!咱们一步步来解决这个问题:
核心问题:让PEAR命令绑定PHP7.4执行
你给虚拟主机选了PHP7.4,但系统默认的CLI版PHP(包括PEAR)还是指向PHP8.0,这才导致安装时一直检测到错误的PHP版本。
- 首先找到PHP7.4的PEAR路径:如果是通过Remi源安装的PHP7.4,路径一般是
/opt/remi/php74/bin/pear。你可以先验证一下这个PEAR对应的PHP版本:
输出里应该显示PHP版本为7.4.x,确认没问题再往下走。/opt/remi/php74/bin/pear version
处理依赖兼容性问题
1. 替换旧版Mongo扩展为MongoDB
报错里提到的pecl/mongo只支持到PHP5.x,PHP7.4需要用mongodb扩展替代:
/opt/remi/php74/bin/pecl install mongodb
安装完成后,编辑PHP7.4的配置文件(比如/etc/opt/remi/php74/php.ini),添加一行:
extension=mongodb.so
然后重启Apache或者PHP-FPM服务生效。
2. 处理废弃依赖的警告
关于pear/Console_Getopt的废弃警告,虽然官方推荐用Console_GetoptPlus,但Horde目前还是依赖旧版,直接安装旧版即可:
/opt/remi/php74/bin/pear install pear/Console_Getopt
不用管警告,先满足Horde的依赖要求。
3. 确保PHP7.4安装了Horde必需的扩展
Horde需要不少基础PHP扩展,你可以用dnf安装(如果是Remi源):
dnf install php74-php-mbstring php74-php-xml php74-php-gd php74-php-imap php74-php-intl php74-php-json
重新执行Horde安装
现在用PHP7.4的PEAR来执行安装命令,这样就会在正确的PHP环境下检测依赖:
/opt/remi/php74/bin/pear install -a -B horde/horde
这次应该不会再出现PHP版本不兼容的报错了,如果还有个别依赖缺失,根据提示用同样的PHP7.4版PECL/PEAR安装即可。
备注:内容来源于stack exchange,提问作者Daniel Franco
相关产品推荐
相关产品推荐

