Debian系统安装PHP7.2-fpm后无法安装php-redis的问题求助
解决PHP7.2-redis安装时php-igbinary冲突的问题
我来帮你搞定这个问题!从报错信息来看,核心冲突是sury源的php-igbinary包和dotdeb源的php7.0-igbinary包都试图控制/etc/php/7.0/mods-available/igbinary.ini这个文件,导致dpkg报错。下面是几个可行的解决思路:
思路1:移除旧的PHP7.0版本igbinary包(推荐)
既然你已经切换到PHP7.2环境,旧的PHP7.0相关扩展大概率已经不需要了,直接清理掉冲突的包:
apt-get purge php7.0-igbinary
清理完成后,再重新安装PHP7.2-redis:
apt-get install php7.2-redis
思路2:强制覆盖冲突文件(保留旧包时使用)
如果不想移除PHP7.0的igbinary包,可以让dpkg强制覆盖冲突的配置文件:
# 先下载php-igbinary包到本地 apt-get download php-igbinary # 强制安装并覆盖冲突文件 dpkg -i --force-overwrite php-igbinary_*.deb # 继续完成php7.2-redis的安装 apt-get install php7.2-redis
思路3:指定安装PHP7.2专属的igbinary包
sury源提供了对应PHP版本的扩展包,直接安装php7.2-igbinary就能避免跨版本冲突:
apt-get install php7.2-igbinary php7.2-redis
额外建议
看你之前的部署脚本里还残留了PHP7.0的操作(比如重启php7.0-fpm),如果已经完全切换到PHP7.2,建议清理掉所有PHP7.0相关组件,避免后续出现更多类似冲突:
apt-get purge php7.0-fpm php7.0-common php7.0-igbinary apt-get autoremove
内容的提问来源于stack exchange,提问作者Didier Ungar
相关产品推荐
相关产品推荐

