Forráskód Böngészése

fix(nginx,docker): 修复前端路由刷新404和Celery HMAC签名不匹配问题

nginx: 拆分/admin路由,添加/assets和/admin/assets静态资源代理
docker: web和celery容器添加相同的MAXKB_HMAC_SIGNED_SERIALIZER_SECRET_KEY环境变量
mengboxin137-blip 2 hete
szülő
commit
2a2377c1c7
2 módosított fájl, 22 hozzáadás és 8 törlés
  1. 2 0
      docker-compose.yml
  2. 20 8
      ui/nginx.conf

+ 2 - 0
docker-compose.yml

@@ -61,6 +61,7 @@ services:
       MAXKB_REDIS_DB: 0
       MAXKB_CORE_WORKER: 4
       MAXKB_STATIC_PATH: /opt/maxkb-app/static
+      MAXKB_HMAC_SIGNED_SERIALIZER_SECRET_KEY: zhagent_hmac_secret_key_2026
     ports:
       - "8080:8080"
     depends_on:
@@ -91,6 +92,7 @@ services:
       MAXKB_REDIS_HOST: redis
       MAXKB_REDIS_PORT: 6379
       MAXKB_REDIS_DB: 0
+      MAXKB_HMAC_SIGNED_SERIALIZER_SECRET_KEY: zhagent_hmac_secret_key_2026
     depends_on:
       postgres:
         condition: service_healthy

+ 20 - 8
ui/nginx.conf

@@ -4,10 +4,6 @@ server {
     root /usr/share/nginx/html;
     index index.html;
 
-    location / {
-        try_files $uri $uri/ /index.html;
-    }
-
     location /api {
         proxy_pass http://maxkb-web:8080;
         proxy_set_header Host $host;
@@ -16,7 +12,7 @@ server {
         proxy_set_header X-Forwarded-Proto $scheme;
     }
 
-    location /admin {
+    location /admin/api {
         proxy_pass http://maxkb-web:8080;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
@@ -24,9 +20,16 @@ server {
         proxy_set_header X-Forwarded-Proto $scheme;
     }
 
-    location /chat {
-        alias /usr/share/nginx/html/chat;
-        try_files $uri $uri/ /chat/index.html;
+    location /admin/assets/ {
+        alias /usr/share/nginx/html/assets/;
+    }
+
+    location /admin {
+        try_files $uri $uri/ /index.html;
+    }
+
+    location /assets/ {
+        alias /usr/share/nginx/html/assets/;
     }
 
     location /chat/api {
@@ -37,6 +40,11 @@ server {
         proxy_set_header X-Forwarded-Proto $scheme;
     }
 
+    location /chat {
+        alias /usr/share/nginx/html/chat;
+        try_files $uri $uri/ /chat/index.html;
+    }
+
     location /ws {
         proxy_pass http://maxkb-web:8080;
         proxy_http_version 1.1;
@@ -47,6 +55,10 @@ server {
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     }
 
+    location / {
+        try_files $uri $uri/ /index.html;
+    }
+
     gzip on;
     gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
 }