fix(admin-ui/nginx): proxy /admin/* и /swagger-ui|v3/api-docs на writer
После добавления audit/outbox admin endpoints + Swagger UI они оказались за SPA-fallback'ом — nginx отдавал index.html вместо проксирования на writer. - /api/v1/admin/* (AuditAdminController + OutboxAdminController) → writer. - /swagger-ui*, /v3/api-docs*, /swagger-resources, /webjars/swagger-ui → writer (там springdoc сидит).
This commit is contained in:
@@ -29,6 +29,30 @@ server {
|
|||||||
proxy_pass_request_headers on;
|
proxy_pass_request_headers on;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# /api/v1/admin/* — audit + outbox admin endpoints на writer.
|
||||||
|
location ~ ^/api/v1/admin/ {
|
||||||
|
set $backend "ordinis-app.${ORDINIS_NAMESPACE}.svc.${CLUSTER_DOMAIN}";
|
||||||
|
proxy_pass http://$backend$request_uri;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_pass_request_headers on;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Swagger UI + OpenAPI spec на writer (там обвязаны контроллеры).
|
||||||
|
location ~ ^/(swagger-ui|v3/api-docs|swagger-resources|webjars/swagger-ui) {
|
||||||
|
set $backend "ordinis-app.${ORDINIS_NAMESPACE}.svc.${CLUSTER_DOMAIN}";
|
||||||
|
proxy_pass http://$backend$request_uri;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_pass_request_headers on;
|
||||||
|
}
|
||||||
|
|
||||||
# GET → read-api, мутирующие → writer.
|
# GET → read-api, мутирующие → writer.
|
||||||
# FQDN в proxy_pass нужен потому что nginx resolver не использует search list.
|
# FQDN в proxy_pass нужен потому что nginx resolver не использует search list.
|
||||||
# Namespace и cluster-domain инжектятся через ENV (см. admin-ui Deployment).
|
# Namespace и cluster-domain инжектятся через ENV (см. admin-ui Deployment).
|
||||||
|
|||||||
Reference in New Issue
Block a user