直接克隆GitCode镜像仓库并配置blowfish_secret为32位随机字符即可运行phpMyAdmin;需手动创建upload/save目录并设755权限,显式声明UploadDir/SaveDir路径。

直接克隆官方镜像仓库就能跑起来,但不配 $cfg['blowfish_secret'] 会进不去登录页,这是最常卡住的一步。
git clone 命令必须用对仓库地址
phpMyAdmin 官方主仓库已归档,现在推荐使用 GitCode 镜像(持续同步、访问稳定):
- 执行
git clone https://gitcode.com/gh_mirrors/ph/phpmyadmin,别用 GitHub 原始地址(可能 404 或响应慢) - 克隆后进入目录,确认存在
config.sample.inc.php和index.php - 如果提示
Permission denied (publickey),说明你误用了 SSH 地址;一律用 HTTPS 地址,无需配置密钥
config.inc.php 必须手动生成且 blowfish_secret 不可为空
config.sample.inc.php 只是模板,不重命名为 config.inc.php 就无法加载配置;而其中的 $cfg['blowfish_secret'] 是 cookie 认证的加密密钥,留空或长度不足 32 字节都会导致白屏或无限跳转登录页:
- 运行
cp config.sample.inc.php config.inc.php - 编辑
config.inc.php,找到$cfg['blowfish_secret']行,替换成 32 个随机字符,例如:$cfg['blowfish_secret'] = 'a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6'; - 不要用中文、空格、制表符;PHP 不校验格式,但浏览器端解密失败时不会报错,只会静默拒绝登录
Web 服务器根目录权限与上传路径需显式声明
phpMyAdmin 默认启用 upload 和 save 功能,但若对应目录不存在或不可写,导入 SQL 或导出数据时会报错 The uploaded file exceeds the upload_max_filesize directive in php.ini 或更隐蔽的 Cannot write to ./upload/:
立即学习“PHP免费学习笔记(深入)”;
- 在 phpMyAdmin 根目录下手动创建
./upload和./save两个空文件夹 - 确保 Web 进程用户(如
www-data或_www)有写权限:chmod 755 upload save - 在
config.inc.php中显式设置路径(即使默认值相同),避免因 PHP open_basedir 限制被忽略:$cfg['UploadDir'] = './upload';,$cfg['SaveDir'] = './save';
开发版没有预编译资产,首次访问时 JS/CSS 加载慢是正常的;但若登录页反复刷新、控制台报 Failed to load resource: the server responded with a status of 403 (Forbidden),大概率是 upload 目录没建或权限不对 —— 这个问题在本地 Apache + macOS 或 WSL 环境中尤其容易被忽略。



















