74 lines
3.5 KiB
Markdown
74 lines
3.5 KiB
Markdown
---
|
||
name: session-20260612-1
|
||
description: 2026-06-12 第1次会话 — Nginx故障修复、证书列表同步、前端移动端适配、网关邮件测试
|
||
metadata:
|
||
type: session
|
||
date: 2026-06-12
|
||
sessionNumber: 1
|
||
startTime: 2026-06-12T01:00+08:00
|
||
---
|
||
|
||
# 2026-06-12 第1次会话
|
||
|
||
## 会话摘要
|
||
本次会话完成多项修复和优化:nginx 80/443端口不监听修复、SSL证书列表从Python API自动同步到DB、前端移动端响应式适配、网关邮件接口连通性验证。
|
||
|
||
## 关键操作
|
||
|
||
### 1. Nginx 80/443 端口不监听修复
|
||
- **问题**: 所有域名访问不了,nginx 进程在跑但不监听 80/443
|
||
- **根因**: `/etc/nginx/nginx.conf` 的 `http {}` 块缺少 `include /etc/nginx/conf.d/*.conf;`(上次加 gzip 时误删)
|
||
- **修复**: 在 gzip_min_length 行后补回 include 指令,`nginx -t` 通过后 reload
|
||
- **结果**: 80/443 恢复监听,域名访问正常
|
||
- **备份**: `/etc/nginx/nginx.conf.bak.20260612`
|
||
|
||
### 2. 删除 wg.server.zgitm.com 转发规则
|
||
- **原因**: 用户新增时提示"规则已存在",选择删除重建
|
||
- **操作**: 通过 Python API `DELETE /api/nginx/rules/wg.server.zgitm.com`
|
||
- **结果**: 规则和 nginx conf 文件同时删除
|
||
|
||
### 3. SSL 证书列表不显示修复 (Java)
|
||
- **问题**: 证书管理页面只显示 2 条(zgitm.com/www.zgitm.com),转发规则创建的 HTTPS 证书不显示
|
||
- **根因**: `CertificateService.listCertificates()` 只查 MySQL certificates 表,转发规则创建时未写入该表
|
||
- **修复**: `listCertificates()` 改为从 Python API 全量同步
|
||
- 调用 `pythonApiClient.listCerts()` 获取文件系统所有证书
|
||
- 自动发现 → 根据 issuer 判断 certType → 写入/更新 DB
|
||
- 已有记录保留通知配置,只刷新文件路径/到期时间
|
||
- **文件**: `CertificateService.java`
|
||
|
||
### 4. 证书列表性能优化
|
||
- **方案**: 5 分钟缓存 (CACHE_TTL_SECONDS=300)
|
||
- 首次同步后 5 分钟内直接读数据库
|
||
- 签发/续期成功后自动失效缓存 (`lastSyncTime = null`)
|
||
- **线程安全**: `synchronized` + 双重检查 `isSyncNeeded()`
|
||
|
||
### 5. 前端修改
|
||
- **通知设置默认邮箱**: `CertManagement.vue` — 空邮箱时默认 `zg@zgitm.com`
|
||
- **API 地址**: `.env.development` / `.env.production` → `https://nginx.server.zgitm.com`
|
||
|
||
### 6. 前端移动端适配
|
||
- **MainLayout.vue**: 汉堡菜单按钮 + CSS 动画侧边栏 + 遮罩层 + resize 监听
|
||
- **NginxForwarding.vue**: 工具栏垂直排列、表格横向滚动 (overflow-x: auto)、对话框 95% 宽
|
||
- **CertManagement.vue**: 同上 + 通知对话框适配
|
||
- **DnsManagement.vue**: 工具栏折叠、表格滚动
|
||
- **App.vue**: 全局消除点击高亮、触摸区增大、字号缩小
|
||
- 断点: ≤768px 自动切换移动布局
|
||
|
||
### 7. 网关邮件接口连通性验证
|
||
- **Token**: `POST https://gw.server.zgitm.com/zgapi/v1/open/token` — 200 OK
|
||
- **发邮件**: `POST .../zgapi/v1/open/email/send` — 重启后 200 OK
|
||
- **网关后端**: `http://10.10.1.170:9000`
|
||
- **systemCode**: nginxServer,systemName: nginx配置管理平台
|
||
|
||
## 重要信息
|
||
- 网关: `https://gw.server.zgitm.com` → `http://10.10.1.170:9000`
|
||
- Java 后端: `10.10.1.170:4002` (`nginx.server.zgitm.com`)
|
||
- Python API: `10.1.1.160:5000`
|
||
- MySQL: `10.1.1.122:3306` (nginxserver/mokee.)
|
||
- 用户自己用 IDEA 部署 Java/前端
|
||
|
||
## 待处理
|
||
- [ ] 网关邮件接口确认 10.10.1.170:9000 服务稳定
|
||
- [ ] 用户自行部署 Java(CertificateService 改动)
|
||
- [ ] 用户自行构建部署前端(MainLayout + 3页面 + 邮箱默认值)
|