diff --git a/app/Http/Middleware/WebApi.php b/app/Http/Middleware/WebApi.php index a0d09a9a6..3c3028caf 100644 --- a/app/Http/Middleware/WebApi.php +++ b/app/Http/Middleware/WebApi.php @@ -25,6 +25,14 @@ class WebApi RequestContext::set('start_time', microtime(true)); RequestContext::set('header_language', $request->header('language')); + // 强制 https + $APP_SCHEME = env('APP_SCHEME', 'auto'); + if (in_array(strtolower($APP_SCHEME), ['https', 'on', 'ssl', '1', 'true', 'yes'], true)) { + $request->server->set('HTTPS', 'on'); + $request->headers->set('X-Forwarded-Proto', 'https'); + $request->setTrustedProxies([$request->getClientIp()], $request::HEADER_X_FORWARDED_PROTO); + } + // 更新请求的基本URL RequestContext::updateBaseUrl($request); @@ -56,12 +64,6 @@ class WebApi } } - // 强制 https - $APP_SCHEME = env('APP_SCHEME', 'auto'); - if (in_array(strtolower($APP_SCHEME), ['https', 'on', 'ssl', '1', 'true', 'yes'], true)) { - $request->setTrustedProxies([$request->getClientIp()], $request::HEADER_X_FORWARDED_PROTO); - } - // 执行下一个中间件 $response = $next($request);