ISP Config主机Shopware升级后bin/console因PHP版本不兼容报错
解决Shopware 6.5.6升级后CLI PHP版本不匹配问题
核心问题
ISP Config后台显示PHP版本已更新到8.1+,但命令行(CLI)环境仍在使用旧的PHP 7.4.13——Web服务器的PHP版本和CLI版本是两套独立配置,升级时只改了Web端的设置,CLI没同步切换。
分步解决
1. 确认当前CLI的PHP版本
先执行命令确认问题:
php -v
如果输出是PHP 7.4.13,就坐实了CLI版本没切换。
2. 切换CLI到PHP 8.1
临时切换(单次生效)
先找到PHP 8.1的绝对路径:
find / -name "php8.1" 2>/dev/null
假设找到的路径是/usr/bin/php8.1,直接用该路径执行命令:
/usr/bin/php8.1 bin/console /usr/bin/php8.1 composer update
永久切换(全局生效)
修改用户的bash配置文件(比如~/.bashrc):
nano ~/.bashrc
在文件末尾添加别名配置:
alias php='/usr/bin/php8.1'
保存后执行命令让配置立即生效:
source ~/.bashrc
再跑php -v确认版本已经切换到8.1+。
3. 修复Composer依赖
切换到PHP 8.1后,执行更新命令:
composer update --no-plugins --no-scripts
完成后再运行bin/console,版本报错应该就消失了。
4. 检查ISP Config全局配置
回到ISP Config后台,确认服务器的全局CLI PHP版本也设置为8.1+——部分环境需要在服务器级别的配置里单独指定CLI的PHP版本,只改网站级的设置不够。
内容的提问来源于stack exchange,提问作者Shahbaz ali
相关产品推荐
相关产品推荐

