CLI显示PHP7.4但Composer识别为PHP5.4的问题求助
CLI显示PHP7.4但Composer识别为PHP5.4的问题求助
Hey 各位大佬,我碰到个挺头疼的问题,想请大家帮忙分析下!
我的服务器环境是CentOS 7搭配Plesk,现在遇到这么个矛盾的情况:
- Plesk后台明确提示PHP 5.4.16模块根本没加载
- 我在命令行执行
php -v,输出的明明是PHP 7.4.33:
PHP 7.4.33 (cli) (built: May 7 2024 14:26:50) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with the ionCube PHP Loader + ionCube24 v11.0.1, Copyright (c) 2002-2022, by ionCube Ltd.
with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies
但离谱的是,用Composer执行操作的时候,还是会报错提示“Composer 2.3.0 dropped support for PHP 5.4...”,这明显是Composer识别到了旧版本的PHP啊!
我自己琢磨了几个可能的排查方向,也想听听大家的建议:
- 会不会是Composer调用的不是系统默认的PHP?毕竟Plesk可能给不同站点配置了不同的PHP版本,说不定Composer走了另一个旧版本的执行路径
- 可以试试直接指定PHP7.4的路径来运行Composer,比如
/usr/bin/php7.4 composer.phar install(具体路径得根据自己服务器上PHP7.4的实际位置调整) - 检查下系统环境变量的PATH设置,看看PHP7.4的路径是不是排在最前面,避免系统优先调用旧版本的PHP
- 也可以查看Composer的全局配置,用
composer config -g php.executable命令,确认有没有指定错误的PHP可执行文件路径
备注:内容来源于stack exchange,提问作者Twiggit
相关产品推荐
相关产品推荐

