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

cPanel部署Laravel报PHP版本不符 命令行显示8.0却识别7.4如何解决

问题根源

cPanel环境默认分离了命令行(CLI)PHP版本和Web服务(Apache/LiteSpeed)解析PHP的版本:你通过SSH执行php -v看到的8.0.20是命令行环境的PHP版本,但对外提供web访问的服务当前还在调用7.4.30版本解析PHP,和Composer依赖要求的>=8.0.2版本不匹配,所以触发平台检查报错。

修复步骤
  • 方法一:通过cPanel多PHP管理器切换站点PHP版本
    1. 登录cPanel面板,找到「MultiPHP Manager/多PHP管理器」功能入口
    2. 在站点列表勾选你部署Laravel应用对应的域名,注意确认站点根目录和你上传Laravel代码的目录(一般是public_html,如果做了域名指向public目录则对应public路径)一致
    3. 在页面上方的PHP版本下拉菜单中,选择8.0.2及以上的PHP版本(优先选择8.0.20和你CLI版本一致的版本,避免后续版本差异问题),点击应用保存
    4. 保存后清除浏览器缓存,重新访问站点验证报错是否消失;如果可以正常进入,再到项目根目录执行php artisan config:clear、php artisan cache:clear清理Laravel缓存即可
  • 方法二:修正.htaccess写死的PHP版本规则
    如果切换多PHP版本后仍报错,进入站点根目录找到.htaccess隐藏文件,检查是否存在类似AddHandler application/x-httpd-php74 .php这类强制指定PHP7.4版本的解析规则,直接删除该行,或者修改为对应8.0版本的规则AddHandler application/x-httpd-php80 .php,保存后重新访问验证。
  • 方法三:通过PHP选择器切换版本
    如果你的cPanel提供「Select PHP Version/PHP版本选择器」功能,进入功能页后直接将全局PHP版本切换为8.0.2以上版本,同时确认勾选Laravel运行必需的扩展:bcmath、ctype、fileinfo、json、mbstring、openssl、pdo_mysql、tokenizer、xml,保存后重新验证。
注意事项

不推荐生产环境使用跳过平台检查的方案:如果临时想绕过版本检查,可以在项目根目录执行composer install --ignore-platform-reqs重新生成依赖文件,但PHP7.4无法解析PHP8新增的语法特性,后续一定会出现语法错误、功能异常问题,最终必须将Web端PHP版本升级到8.0.2以上才能正常运行。

内容的提问来源于stack exchange,提问作者Alphy Gacheru

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 05:54:15