上线前最后一小时:权限、路由、菜单、配置逐项核对清单

教程 6 浏览 0 回复 返回上级

每次发版前,总有几个晚上是因为漏配一个权限位或者少挂一条路由而熬夜。与其靠记忆和运气,不如把检查项固化成一张可勾选的清单。这张表是我自己从几次线上事故里捡回来的,按“先权限、再路由、后菜单、最后配置”的顺序走,基本能挡住九成以上低级问题。

第一步:权限核对(最容易漏,也最难查)

不要只看新增接口的权限注解,要拿着实际用户角色去模拟调用。检查三处:一是新加的控制器方法是否在权限表里注册了对应的权限标识,二是该标识是否已绑定到目标角色组,三是超级管理员以外的测试账号是否真的能访问。常见坑是权限标识写对了,但角色组缓存没刷新,导致线上还是旧权限集。清缓存、重新登录、再试一次,三步缺一不可。

第二步:路由核对(别被“能打开首页”迷惑)

路由表里新增的路径要逐个访问,包括带参数和不带参数两种形态。重点检查:动态路由的占位符是否和控制器方法参数名一致,别名是否冲突,以及路由是否被前置中间件意外拦截。另一个隐蔽问题是路由文件加载顺序——如果你新增的路由写在旧规则之后,且旧规则里有通配符,新路由可能永远匹配不到。用命令行工具列出全部路由,按注册顺序扫一遍,比肉眼盯代码靠谱。

第三步:菜单与入口核对(看不见不等于不存在)

后台菜单新增项要确认父级ID正确,排序值不和其他项重叠,并且菜单状态是“显示”。前台入口则要检查面包屑、导航高亮和页面标题是否一致。特别留意那些不在菜单里、但通过URL直接访问的页面——它们不需要菜单项,但需要确认权限控制依然生效。菜单缓存和权限缓存经常是分开的,清理时别漏掉。

第四步:配置文件与依赖项核对(环境差异是最大的坑)

把开发环境和生产环境的配置文件做一次diff,重点关注数据库连接串、缓存驱动、调试开关和日志级别。新功能如果引入了第三方服务的key或secret,确认生产环境变量已设置且值有效。还有一类容易被忽略的是定时任务和队列——它们的配置往往不在主配置文件里,单独检查cron表达式和队列连接是否指向正确。最后,跑一遍健康检查接口,确认服务能正常响应,而不是只看了静态页面。

这张清单不是一次性的,每上线一个功能就照着过一遍。熟练之后十分钟能走完,但能省下的是发版后一整晚的排查时间。如果你也有自己固定的检查项,欢迎补在回复里,互相查漏。

评论0
评论 · 0
还没有评论