From 4fa45b6944d1c57667c212bed585802958665d1e Mon Sep 17 00:00:00 2001 From: xiaolipro <2357729423@qq.com> Date: Fri, 17 Apr 2026 11:25:50 +0800 Subject: [PATCH] =?UTF-8?q?ai-fix=EF=BC=9Aproxy=20https=20police=EF=BC=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/SimpleAdmin.Api/SimpleAdminApiModule.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/SimpleAdmin.Api/SimpleAdminApiModule.cs b/src/SimpleAdmin.Api/SimpleAdminApiModule.cs index 26cb460..c36f82e 100644 --- a/src/SimpleAdmin.Api/SimpleAdminApiModule.cs +++ b/src/SimpleAdmin.Api/SimpleAdminApiModule.cs @@ -58,8 +58,10 @@ public class SimpleAdminApiModule : FakeModule services.Configure(options => { - options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto; - //新增如下两行 + // 反向代理场景下恢复客户端真实来源信息,供 Swagger、鉴权和重定向等中间件使用 + options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | + ForwardedHeaders.XForwardedProto | + ForwardedHeaders.XForwardedHost; options.KnownNetworks.Clear(); options.KnownProxies.Clear(); }); @@ -69,6 +71,9 @@ public class SimpleAdminApiModule : FakeModule { var app = context.GetWebApplication(); + // 必须在读取 Scheme/Host/PathBase 的中间件之前执行,否则 Swagger 会生成错误的请求地址 + app.UseForwardedHeaders(); + // 虚拟路由-网关适配 app.UsePathBase(app.Configuration["ASPNETCORE_PATHBASE"]);