withRouting( web: __DIR__.'/../routes/web.php', commands: __DIR__.'/../routes/console.php', channels: __DIR__.'/../routes/channels.php', health: '/up', ) ->withMiddleware(function (Middleware $middleware): void { // Trust Cloudflare + Coolify Traefik so HTTPS scheme is detected // and X-Forwarded-* headers are honored. $middleware->trustProxies(at: '*', headers: Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO | Request::HEADER_X_FORWARDED_AWS_ELB ); // ResolveTenant must run on EVERY web request (including Livewire // /livewire/update endpoints) so tenant context is set before // any DB query goes through the global TenantScope. $middleware->web(append: [ \App\Http\Middleware\ResolveTenant::class, \App\Http\Middleware\CheckTenantStatus::class, \App\Http\Middleware\SetLocale::class, ]); }) ->withExceptions(function (Exceptions $exceptions): void { // })->create();