Laravel Sanctum:发送 cookie 给任何 domain/host

Laravel Sanctum: send cookies to any domain/host

我正在尝试将 Laravel 应用程序集成到更大的应用程序中,并 运行 解决会话持久性问题。

Laravel 应用程序应在任何域名上提供单页应用程序 运行。

我刚刚用 Laravel 爆了我的樱桃,所以我不知道如何摆脱这个功能。

// config/sanctum.php
// ...
'stateful' => explode(',', env('SANCTUM_STATEFUL_DOMAINS', 'localhost,127.0.0.1') ),
// ...

我试过添加 * 但没有成功。我不想尝试添加引用域,因为并非所有浏览器都通过它。该应用程序位于反向代理之后,因此 $_SERVER['HTTP_HOST'] 将无法工作。

如何配置 Laravel Sanctum 以发送任何域名的会话 cookie,而无需在 SANCTUM_STATEFUL_DOMAINS .env 文件中添加每个域名?

经过大约 491 次不同的 google 搜索后,我能够通过将 \Illuminate\Session\Middleware\StartSession::class 添加到 app/Http/Kernel.php 中的顶部 $middleware 数组来解决此问题,以确保所有请求都是有状态的,包括api 个请求。

如果 CORS 策略允许 all/any 个域名,它将起作用。