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

Cpanel部署Laravel项目出现could not find driver(SQL)错误如何解决?

修复Cpanel环境下Laravel项目"could not find driver(SQL)"报错方案
  • 第一步:核对PHP版本与扩展匹配关系
    Cpanel支持多版本PHP共存,大部分勾选扩展后不生效的问题都来源于版本不匹配:你在PHP 8.1的扩展管理页勾选了pdo_mysql,但Laravel项目实际绑定的是其他PHP版本。
    验证方法:在Laravel项目的public目录下新建phpinfo.php文件,写入代码:
    <?php phpinfo(); ?>
    
    访问该文件查看顶部标注的当前PHP版本,再回到Cpanel的「选择PHP版本」页面,切换到对应版本后重新确认pdo_mysql扩展已勾选。
  • 第二步:强制刷新PHP扩展配置
    版本确认无误后仍不生效的,可通过重选扩展触发配置刷新:在Cpanel「PHP选择器」页面先取消勾选pdo_mysql,保存配置后等待1分钟,再重新勾选pdo_mysql保存。
    如果你有服务器root权限,可直接重启对应版本的PHP-FPM服务生效,命令示例(以PHP 8.1为例):systemctl restart ea-php81-php-fpm
  • 第三步:修正Laravel数据库配置
    确认项目根目录.env文件的配置项符合要求:
    • 数据库驱动填写正确:DB_CONNECTION=mysql
    • 部分Cpanel环境禁用localhost的socket连接,可尝试将DB_HOST=localhost改为DB_HOST=127.0.0.1测试
  • 第四步:验证扩展实际加载状态
    phpinfo页面显示pdo_mysql相关值为0/0属于统计值异常,不代表扩展未加载,可以在项目根目录新建test_pdo.php文件验证:
    <?php
    var_dump(extension_loaded('pdo_mysql'));
    var_dump(PDO::getAvailableDrivers());
    ?>
    
    执行php test_pdo.php或者web访问该文件,如果返回bool(true)且mysql出现在驱动列表中,说明扩展已正常工作。

如果以上操作都无法解决问题,联系你的主机服务商确认是否服务器层面禁用了pdo_mysql的依赖组件,或是MySQL socket路径与PHP默认配置不匹配。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 04:39:03