禁用 phpmyadmin 首页新闻栏和外网访问:设 $cfg['showchangelog'] = false 和 $cfg['versioncheck'] = false 关闭更新提示与版本检查;nginx 中用 location ^~ /phpmyadmin { return 404; } 彻底屏蔽外网入口;清空 $cfg['footercomment']、设 $cfg['displayserverslist'] = false 隐藏敏感信息。
禁用 phpmyadmin 首页新闻栏:关掉 $cfg['showchangelog'] 和 $cfg['versioncheck']
phpmyadmin 默认会在登录后的首页右上角显示「news」卡片和「a newer version is available」提示,这些内容由官方服务器远程拉取,不仅干扰界面,还可能暴露你正在使用的版本号——攻击者能据此判断是否可利用已知漏洞。关闭它们不需要改前端 html,只需修改配置文件中的两个布尔开关。
-
$cfg['ShowChangelog'] = false;—— 关闭右侧「What's new」更新日志区块 -
$cfg['VersionCheck'] = false;—— 禁止向https://www.phpmyadmin.net/versions.json发起 HTTP 请求检查版本(这个请求在登录后自动触发,且无超时控制,有时还会拖慢页面加载) - 这两个配置必须写在
config.inc.php的$cfg数组赋值之后、末尾分号之前;如果写在/* End of servers configuration */后面,会被忽略
彻底屏蔽外网访问的「首页入口」:别只靠改路径名
很多人以为把 /phpmyadmin 改成 /db-admin-2026 就安全了,其实这只是“安全幻觉”。只要目录存在且 Web 服务可访问,扫描器几秒就能撞出来。真正有效的外网隔离,是让这个路径根本不在公网响应。
- 用 Nginx 的
location块直接返回404或403:location ^~ /phpmyadmin { return 404; }比重命名更可靠,也避免遗留旧路径被猜中 - 若必须保留内网可用,加 IP 白名单:
allow 192.168.1.0/24;+deny all;,注意顺序不能颠倒 - 切勿依赖
.htaccess(Apache)或前端 JS 隐藏入口——这些对爬虫和自动化工具完全无效
隐藏首页链接与页脚信息:删掉 $cfg['FooterComment'] 和 $cfg['DisplayServersList']
即使关了新闻栏,首页顶部仍可能显示「phpMyAdmin 5.2.1 | Server: localhost」这类信息,页脚还有官网链接和版本号。这些不是装饰,是情报源。
-
$cfg['FooterComment'] = '';—— 清空页脚自定义文字(默认为空,但有些一键包会塞入推广文案) -
$cfg['DisplayServersList'] = false;—— 登录页不显示服务器下拉菜单(适合单实例部署,避免暴露服务器别名) -
$cfg['ServerDefault'] = 1;+$cfg['AllowArbitraryServer'] = false;—— 防止用户手动输入任意 host 绕过登录页限制 - 改完记得清空浏览器缓存,phpMyAdmin 会缓存部分前端资源,改了配置但页面没变,大概率是本地 JS/CSS 没刷新
为什么「清爽」和「安全」在这里是一回事
所谓“保持主页清爽”,本质是减少信息泄露面。一个干净的首页没有新闻、没有版本提示、没有服务器列表、没有外部请求、没有页脚链接——它就不像 phpMyAdmin,而像一个你私有定制的管理端。这种“不像”,恰恰让自动化扫描器跳过它,也让人工渗透时多一道确认成本。最常被忽略的是 $cfg['VersionCheck'] = false 这一行:它不光去广告,更切断了一条隐蔽的出站连接,避免在防火墙日志里留下可疑的 HTTPS 外联记录。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











