linux 多个PHP版本切换版本

一、当系统存在多个 PHP 版本时,核心是通过 update-alternatives(系统级软链接管理) 或 直接指定绝对路径,确保 php、phpize、php-config 指向目标版本(最新版)

第一步:先找到所有 PHP 版本的安装路径

php 复制代码
# 搜索 php 可执行文件
which -a php
find /usr/bin -name "php*" | grep -E "php$|php[0-9]+\.[0-9]+$"

# 搜索 phpize(编译依赖)
which -a phpize
find /usr/bin -name "phpize*" | grep -E "phpize$|phpize[0-9]+\.[0-9]+$"

# 搜索 php-config(编译配置依赖)
which -a php-config
find /usr/bin -name "php-config*" | grep -E "php-config$|php-config[0-9]+\.[0-9]+$"

或者查找
find / -name php-fpm

第二步:用 update-alternatives 配置系统默认版本

bash 复制代码
# 1. 添加 PHP 7.4 到 php 替代组(优先级设为 100,数字越大优先级越高)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.4 100

# (可选)如果之前有旧版本(如 PHP 7.2),也添加到替代组(优先级设为 90,低于 7.4)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.2 90

# 2. 选择默认的 php 版本(会弹出交互界面,选对应 PHP 7.4 的序号)
sudo update-alternatives --config php

按上诉方式依次替换 phpize php-config

补充:CentOS 系统的差异

CentOS 没有 update-alternatives 对 PHP 的默认支持,需手动创建软链接,步骤如下:

bash 复制代码
先删除旧的软链接(如果存在)
sudo rm -f /usr/bin/php /usr/bin/phpize /usr/bin/php-config

为最新版本创建新的软链接(假设 PHP 7.4 路径为 /usr/bin/php74,需根据实际路径调整):
# 假设 PHP 7.4 安装在 /usr/bin/php74、/usr/bin/phpize74、/usr/bin/php-config74
sudo ln -s /usr/bin/php74 /usr/bin/php
sudo ln -s /usr/bin/phpize74 /usr/bin/phpize
sudo ln -s /usr/bin/php-config74 /usr/bin/php-config
相关推荐
玖石书1 小时前
WSL2 手动安装 Ubuntu 24.04 到指定磁盘位置
linux·运维·ubuntu·wsl
库玛西2 小时前
深入浅出传输层:UDP 与 TCP 协议全景指南
linux·服务器·网络·c++·笔记·tcp/ip·udp
薛定谔的悦6 小时前
储能 EMS 的功率策略:从一块电表到一次逆流的 200 毫秒
大数据·linux·能源·储能·bms
新时代牛马9 小时前
Linux 内核入门地图:架构、源码目录与五大子系统
linux·运维·架构
Julien20049 小时前
控制 SELinux 文件上下文
linux·运维·服务器
sulikey9 小时前
Linux Core Dump 完全指南:从原理到实战的崩溃调试手册。什么是core dump?程序报错core dumped怎么办?
linux·服务器·操作系统·调试·coredump
MayZork12 小时前
Windows 与 Linux 下 vcpkg 的安装部署指南
linux·运维·windows
zbyyd13 小时前
Linux 进程间通信学习笔记
linux·笔记·学习
郑州光合科技余经理13 小时前
本地生活服务系统:模块边界与结算字段怎么拆
java·开发语言·前端·后端·系统架构·uni-app·php
2601_9620725015 小时前
网络安全防护指南:筑牢网络安全防线(510)
安全·web安全·php