Merge branch 'master' into opt/admin-sort-project
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Failing after 1m12s
Project CI / AI game creator shell Rust crates (pull_request) Failing after 1m12s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 1m13s
Project CI / AI game creator shell Rust smoke (pull_request) Failing after 1m13s
Project CI / Frontend tests (pull_request) Successful in 3m37s
Project CI / Repository checks (pull_request) Successful in 4m42s
Project CI / AI game creator shell web tests (pull_request) Successful in 2m19s
Project CI / Backend tests (pull_request) Successful in 6m53s
Project CI / Native shell tests (pull_request) Successful in 7m31s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Failing after 1m12s
Project CI / AI game creator shell Rust crates (pull_request) Failing after 1m12s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 1m13s
Project CI / AI game creator shell Rust smoke (pull_request) Failing after 1m13s
Project CI / Frontend tests (pull_request) Successful in 3m37s
Project CI / Repository checks (pull_request) Successful in 4m42s
Project CI / AI game creator shell web tests (pull_request) Successful in 2m19s
Project CI / Backend tests (pull_request) Successful in 6m53s
Project CI / Native shell tests (pull_request) Successful in 7m31s
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
- 默认转发 `api-server` 到 `127.0.0.1:8082`。
|
||||
- 默认转发最小 SpacetimeDB 公网路由到 `127.0.0.1:3101`。
|
||||
- 默认静态目录为 `/srv/genarrative/web`,维护开关文件为 `/var/lib/genarrative/maintenance/enabled`。
|
||||
- 清智创游官网独立域名的 `/home/` 静态资源仍由 Nginx 独立 vhost 提供;`/api/*` 必须进入 api-server,不能回退为静态 404。
|
||||
- 静态响应会显式写入 `Cache-Control`:HTML / SPA fallback 默认 `no-cache`,Vite 指纹静态资源默认 `public, max-age=31536000, immutable`,其它静态资源默认 `no-cache`。三档分别由 `GENARRATIVE_PINGORA_GATEWAY_HTML_CACHE_CONTROL`、`GENARRATIVE_PINGORA_GATEWAY_ASSET_CACHE_CONTROL` 和 `GENARRATIVE_PINGORA_GATEWAY_STATIC_CACHE_CONTROL` 覆盖,配置值禁止换行或 NUL,避免响应头注入。静态文件还会按 metadata 写入弱 `ETag`、`Last-Modified` 与 `Accept-Ranges: bytes`,并对 `GET` / `HEAD` 的 `If-None-Match`、`If-Modified-Since` 返回 `304`;单段 `Range: bytes=` 返回 `206 + Content-Range`,越界范围返回 `416 + Content-Range: bytes */<len>`,保持 HTML `no-cache` 下的浏览器协商缓存和 Nginx 直连体验一致。
|
||||
- `/api` 通用路由同时按 `Content-Length` 与实际流式请求体累计字节数执行大小上限,避免客户端省略长度头绕过网关保护。
|
||||
- `GENARRATIVE_PINGORA_GATEWAY_PROBE_TOKEN` 非空时,`/__genarrative_pingora/healthz` 可用同名探针 header 做本机 shadow 健康检查;未带 token 或 token 不匹配时仍返回 404。
|
||||
|
||||
Reference in New Issue
Block a user