phpMyAdmin服务器下拉列表显示host地址而非自定义名称,是因为未设置$cfg['Servers'][$i]['verbose']字段;该字段必须显式配置(如'开发环境(本地)'),且仅影响登录页下拉框和顶部切换按钮文案,不继承、不默认,设了才生效。
为什么服务器下拉列表里显示的是 host 地址而不是自定义名称
phpmyadmin 默认把 $cfg['servers'][$i]['host'] 的值直接用作登录页下拉菜单的显示名。如果你填了 '192.168.1.10' 或 'localhost',它就真显示这个字符串——不是你想看到的“生产库”“测试库”之类语义化名称。
$cfg['Servers'][$i]['verbose'] 是唯一生效的自定义显示名字段
必须显式设置 verbose 键,且只能在每个服务器配置块里单独设。它不继承、不默认、不拼接,设了才显示,没设就 fallback 到 host 值。
$cfg['Servers'][1]['verbose'] = '开发环境(本地)';$cfg['Servers'][2]['verbose'] = 'Docker 测试库';$cfg['Servers'][3]['verbose'] = '阿里云生产库';
注意:verbose 只影响登录页下拉框和顶部服务器切换按钮的文案,不影响侧边栏数据库列表或连接后的页面标题。
常见错误:混淆 verbose 和 pmadb、controluser 等字段
这些字段完全无关:
-
pmadb是 phpMyAdmin 自身存储配置的数据库名,不控制显示名 -
controluser/controlpass是用于高级功能的专用账号,和界面文案无关 -
$cfg['Servers'][$i]['name']是无效键,phpMyAdmin 会忽略它
如果写了 'name' => 'xxx' 却没写 'verbose',下拉列表照样显示 IP 或 localhost。
刷新后仍不显示自定义名?检查这三点
最常卡在这几个环节:
- 配置文件末尾少分号,导致 PHP 解析失败,整个
$cfg['Servers']数组没加载——用php -l /etc/phpmyadmin/config.inc.php检查语法 -
$cfg['ServerDefault'] = 0;没启用,phpMyAdmin 默认只渲染第一个服务器,不展示下拉菜单 - 浏览器缓存了旧 JS,登录页没加载新配置——强制硬刷新(Ctrl+Shift+R),或清空 phpMyAdmin 的
cache/目录
verbose 名称是纯前端渲染,不涉及数据库查询或权限校验,只要配置加载成功、菜单可见,它就会立刻出现。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











