You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cpanel终端执行Composer Update时PHP版本不符问题

解决Magento升级时PHP版本不匹配问题

问题现象

已通过cPanel的MultiPHP Manager将domain.com的PHP版本切换至8.1,但终端执行Magento版本升级时仍提示旧PHP版本错误:

Problem 1
    - Root composer.json requires magento/product-community-edition 2.4.7-p4 -> satisfiable by magento/product-community-edition[2.4.7-p4].
    - magento/product-community-edition 2.4.7-p4 requires php ~8.1.0||~8.2.0||~8.3.0 -> your php version (7.4.33) does not satisfy that requirement.

进入域名目录执行php -v显示版本为8.1,但回到根目录执行php -v显示为7.4。尝试执行命令/usr/local/bin/ea-php81 /opt/cpanel/composer/bin/composer update后,仍使用旧PHP版本。

解决步骤

1. 先进入Magento根目录操作

必须先通过cd命令切换到你的Magento项目根目录(即包含composer.json的目录),再执行后续命令——根目录的PHP环境和域名目录的环境是分离的,直接在根目录执行会读取系统默认PHP配置。

2. 强制指定PHP8.1执行Composer

在Magento根目录内,执行以下命令,确保Composer调用PHP8.1运行:

/usr/local/bin/ea-php81 /opt/cpanel/composer/bin/composer update

3. 验证Composer使用的PHP版本

执行以下命令确认当前Composer关联的PHP版本:

/usr/local/bin/ea-php81 /opt/cpanel/composer/bin/composer diagnose

查看输出中的PHP version字段,确认是否为8.1.x版本。如果版本正确,再重新执行Magento升级命令。

4. 永久切换终端默认PHP版本(可选)

如果需要长期在终端使用PHP8.1,可修改shell配置文件:

  • 编辑~/.bashrc或~/.bash_profile文件,添加:
    alias php='/usr/local/bin/ea-php81'
    
  • 执行source ~/.bashrc使配置生效,之后执行php -v即可看到版本切换为8.1。

5. 检查cPanel的CLI版本设置

部分cPanel主机支持单独设置CLI版本:

  • 进入cPanel的Select PHP Version工具,切换到Options标签页
  • 找到PHP version选项,确认CLI版本是否设置为8.1
  • 若没有该选项,联系主机商调整系统默认CLI的PHP版本

内容的提问来源于stack exchange,提问作者Kareem k

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 02:37:04