文档
内部 DNS 管控 — Laravel + Vue 3 控制台
架构概览
浏览器 ├── / 官网(Blade + 赛博主题 CSS) ├── /login 登录(Vue 3 + Element Plus) ├── /console 控制台 SPA(Vue 3 + Element Plus 深色主题) └── /api/v1/* Laravel REST JSON API Laravel 9 后端 ├── Controllers/Api/V1 认证 · 域名 · 记录 · 日志 ├── FormRequest 输入校验 ├── Services DNS · Captcha · OperationLogger └── MySQL users · operation_logs · login_attempts
API 参考
所有 API 返回 JSON({"ok":true,...}),需登录接口使用 Session Cookie。
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /api/v1/auth/captcha | 图形验证码 |
| POST | /api/v1/auth/login | 登录 {user, pass, captcha} |
| GET | /api/v1/domains/{domain}/records | 记录 + 分类 + 统计 |
| POST | /api/v1/records | 添加记录 |
| GET | /api/v1/operation-logs | 操作日志(分页) |
| GET | /api/v1/probe?host= | DNS + HTTP 探测 |
前端技术栈
- Vue 3 — Composition API + Vite 构建
- Element Plus — 表格、对话框、表单、分页等 UI 组件
- 赛博深色主题 — 自定义 CSS 变量覆盖 Element 默认样式
记录分类
- 线上站点 — A 记录指向本机且 Nginx 有 vhost
- 孤儿解析 — 指向本机但无对应站点
- 邮件 / 证书 — 受保护,批量删除需 force