91 lines
2.6 KiB
Markdown
91 lines
2.6 KiB
Markdown
|
|
# 数据库检查结果
|
|||
|
|
|
|||
|
|
## 检查发现
|
|||
|
|
|
|||
|
|
1. **数据库表为空**:新安装的 Gerrit 数据库可能还没有创建表结构
|
|||
|
|
2. **但账户可以登录**:从日志看,账户 1000000 可以成功登录(`a/1000000`)
|
|||
|
|
|
|||
|
|
## 问题分析
|
|||
|
|
|
|||
|
|
这**不是数据库问题**,而是**浏览器 Cookie 问题**。原因:
|
|||
|
|
|
|||
|
|
1. ✅ 服务器端登录成功(日志显示 `a/1000000`)
|
|||
|
|
2. ✅ 账户存在(否则无法登录)
|
|||
|
|
3. ❌ 浏览器没有保存 Cookie(所以显示匿名)
|
|||
|
|
|
|||
|
|
## Google Chrome 浏览器的 Cookie 问题
|
|||
|
|
|
|||
|
|
Chrome 浏览器对 Cookie 有严格的安全策略,特别是:
|
|||
|
|
- SameSite 属性
|
|||
|
|
- Secure 属性
|
|||
|
|
- 第三方 Cookie 限制
|
|||
|
|
|
|||
|
|
## 解决方案
|
|||
|
|
|
|||
|
|
### 方案一:检查 Chrome Cookie 设置(最重要)
|
|||
|
|
|
|||
|
|
1. **打开 Chrome 设置**:
|
|||
|
|
- 点击右上角三个点 → 设置
|
|||
|
|
- 或访问:`chrome://settings/cookies`
|
|||
|
|
|
|||
|
|
2. **检查 Cookie 设置**:
|
|||
|
|
- 确保**不是**"阻止所有 Cookie"
|
|||
|
|
- 建议选择"允许所有 Cookie"
|
|||
|
|
- 或者"仅阻止第三方 Cookie"
|
|||
|
|
|
|||
|
|
3. **检查网站特定设置**:
|
|||
|
|
- 访问:`http://101.43.95.130:8080`
|
|||
|
|
- 点击地址栏左侧的锁图标或"不安全"
|
|||
|
|
- 点击"Cookie"
|
|||
|
|
- 确保允许 Cookie
|
|||
|
|
|
|||
|
|
### 方案二:使用开发者工具检查
|
|||
|
|
|
|||
|
|
1. **按 `F12` 打开开发者工具**
|
|||
|
|
2. **切换到 Application 标签**
|
|||
|
|
3. **左侧选择 Cookies → `http://101.43.95.130:8080`**
|
|||
|
|
4. **点击 Account ID `1000000` 登录**
|
|||
|
|
5. **查看是否出现 Cookie**
|
|||
|
|
|
|||
|
|
如果没有 Cookie,说明 Chrome 阻止了 Cookie。
|
|||
|
|
|
|||
|
|
### 方案三:检查网络请求
|
|||
|
|
|
|||
|
|
1. **按 `F12` → Network 标签**
|
|||
|
|
2. **点击 Account ID `1000000` 登录**
|
|||
|
|
3. **查看 `/login?account_id=1000000` 请求**
|
|||
|
|
4. **查看 Response Headers 中的 `Set-Cookie`**
|
|||
|
|
5. **查看后续请求的 Request Headers 中是否有 `Cookie`**
|
|||
|
|
|
|||
|
|
### 方案四:尝试 Firefox 浏览器
|
|||
|
|
|
|||
|
|
Firefox 对 Cookie 的限制通常较少,可以尝试:
|
|||
|
|
1. 下载并安装 Firefox
|
|||
|
|
2. 访问:`http://101.43.95.130:8080`
|
|||
|
|
3. 点击 Account ID `1000000` 登录
|
|||
|
|
4. 如果 Firefox 可以登录,说明是 Chrome 的 Cookie 策略问题
|
|||
|
|
|
|||
|
|
### 方案五:使用无痕模式测试
|
|||
|
|
|
|||
|
|
1. 按 `Ctrl+Shift+N` 打开无痕窗口
|
|||
|
|
2. 访问:`http://101.43.95.130:8080`
|
|||
|
|
3. 点击 Account ID `1000000` 登录
|
|||
|
|
|
|||
|
|
如果无痕模式下可以登录,说明是 Chrome 扩展程序或设置的问题。
|
|||
|
|
|
|||
|
|
## 当前配置
|
|||
|
|
|
|||
|
|
```ini
|
|||
|
|
[httpd]
|
|||
|
|
listenUrl = http://*:8080/
|
|||
|
|
cookieSecure = false
|
|||
|
|
cookieSameSite = NONE
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
这是最宽松的 Cookie 配置,应该可以工作。
|
|||
|
|
|
|||
|
|
## 结论
|
|||
|
|
|
|||
|
|
**这不是数据库问题**,而是 **Chrome 浏览器的 Cookie 安全策略**导致的。请按照上述方案检查 Chrome 的 Cookie 设置。
|
|||
|
|
|