| | |
| | | | `SERVER_ADDRESS` | 后端只绑 `127.0.0.1`,对外一律经 nginx。 | |
| | | | `UPLOAD_DIR` | 上传目录指到 `/data`(系统盘只有 40G)。 | |
| | | | `APP_PRIVACY_ENCRYPTION_KEY` | 默认值是**仓库里公开的开发 key**。`SensitiveDataCrypto` 是 `SHA-256(该字符串)` 派生 AES key,所以任意字符串合法。**必须在写入任何隐私数据之前设**——事后换会让旧数据解不开。 | |
| | | | `CORS_ALLOWED_ORIGINS` | **必须包含浏览器实际访问的 origin,哪怕是同源。** 浏览器对同源的非简单请求(POST + JSON)也会带 `Origin` 头,而 `ApiCorsConfig` 只要看到 `Origin` 就按白名单校验,不在名单里直接 **403 `Invalid CORS request`**。漏了它的症状就是「登录 403」。 | |
| | | | `CORS_ALLOWED_ORIGINS` | **必须包含浏览器实际访问的 origin,哪怕是同源。** 浏览器对同源的非简单请求(POST + JSON)也会带 `Origin` 头,而 `ApiCorsConfig` 只要看到 `Origin` 就按白名单校验,不在名单里直接 **403 `Invalid CORS request`**。漏了它的症状就是「登录 403」。当前值:`http://117.172.73.106:8081`、`http://117.172.73.106:8082`、`http://www.dqrcfwpt.com:8081`、`https://www.dqrcfwpt.com`(后者为将来上 TLS 预留)。**换域名 / 换端口 / 换协议都会换 origin,都要补** —— 2026-09-22 因为换域名又踩了一次。 | |
| | | |
| | | `allowed-origin-patterns`(`http://localhost:[*]`)没被覆盖,所以本地 vite / HBuilderX 调试来源照旧放行。 |
| | | |
| | |
| | | `.scratch/pending-order-payment-flow/README.md` 的 F1)。收敛靠读接口惰性查询 + 60 秒一轮的对账快车道, |
| | | 订单不会卡住。要收回调得等备案域名。 |
| | | - **8081 对全公网开放且是纯 HTTP**(无 TLS),token 明文传输。已确认接受(测试环境)。 |
| | | - **域名**:`www.dqrcfwpt.com` → `117.172.73.106`(2026-09-22 解析)。**访问必须带端口**: |
| | | `http://www.dqrcfwpt.com:8081` —— 80/443 未备案开不出来,实测不带端口是超时。退域名 `dqrcfwpt.com` |
| | | **没有 A 记录**(公网解析器确认 `ENODATA`),要用不带 www 的形式得先补记录。 |
| | | - nginx 的 `server_name _` 是通配,所以域名访问无需改站点配置(实测 `http://www.dqrcfwpt.com:8081/` 返回 200)。 |
| | | - 数据库:`talent_card`,字符集 `utf8mb4` / `utf8mb4_0900_ai_ci`(与测试库同口径, |
| | | 照 `ResetTestDatabase.java` 只写 charset 不写 collate;**不要**照抄 `init-local-mysql.sql` 的 `utf8mb4_unicode_ci`,那是 5.7 开发库用的)。 |
| | | - MySQL 8.4 上迁移里的 7 条 `VALUES() is deprecated`(1287)仍可运行,但该语法未来版本会被移除。 |