Magento 1(1.9.2.3)旧站恢复备份无法运行 PDO扩展缺失报错求助
问题根因
你的Magento 1站点报错的核心原因是服务器当前使用的PHP环境未加载pdo和pdo_mysql扩展,该扩展是Magento 1连接MySQL数据库的必须依赖,此前备份恢复失效是服务器PHP配置变更(比如版本升级、扩展被关闭)导致的,和你备份的站点文件无关。
具体解决步骤
- 第一步:确认站点当前PHP版本
在站点根目录新建phpinfo.php文件,写入以下内容:
访问该文件查看当前生效的PHP版本,同时确认扩展列表中<?php phpinfo(); ?>pdo、pdo_mysql处于未加载状态。 - 第二步:开启对应PHP扩展
分不同服务器场景操作:- 虚拟主机(带cPanel/宝塔等面板):登录面板找到PHP版本管理入口,在扩展列表勾选
pdo、pdo_mysql,保存配置后等待1分钟生效。 - 自主管理的Debian/Ubuntu服务器:如果当前用的是PHP5.6(Magento 1推荐适配版本),执行以下命令:
apt update && apt install php5.6-pdo php5.6-mysql # 安装完成后重启服务,根据你的运行环境选一个执行 systemctl restart php5.6-fpm # 用Nginx+PHP-FPM的情况 systemctl restart apache2 # 用Apache的情况 - 自主管理的CentOS服务器:执行以下命令:
yum install php-pdo php-mysqlnd # 重启服务 systemctl restart php-fpm systemctl restart httpd
- 虚拟主机(带cPanel/宝塔等面板):登录面板找到PHP版本管理入口,在扩展列表勾选
- 第三步:验证修复
扩展开启后删除站点根目录的phpinfo.php文件(避免泄露服务器配置信息),直接访问站点即可正常加载。
额外注意事项
- 不要给站点使用PHP7.1及以上版本,Magento 1最高适配到PHP7.0,过高的PHP版本会引发其他兼容报错,如果当前服务器PHP版本高于7.0,先切回PHP5.6或PHP7.0再开启扩展。
- 修复完成后无需再重新恢复备份,原有备份的站点文件和数据库都是正常可用的。
内容的提问来源于stack exchange,提问作者Horace Foca
相关产品推荐
相关产品推荐

