Laravel Jetstream Fortify 强制使用 SSL 或 HTTPS

Har*_*uis 0 ssl https laravel fortify laravel-jetstream

我开发了一个带有登录部分的网站,使用 Jetstream(与 Fortify)对用户进行身份验证。在本地环境下,效果很好。生产环境(通过 AWS 上的 Elastic Beanstalk)不适用于 SSL 证书。

为了让 Laravel 在生产中使用 HTTPS,我向 AppServiceProvider 添加了以下代码。

public function boot()
{
  if (App::environment('production')) {
    URL::forceScheme('https');
  } 
}
Run Code Online (Sandbox Code Playgroud)

现在,对于所有路由,除了登录后的重定向之外,它都可以完美运行。然后使用 HTTP 而不是 HTTPS 重定向路由。显示混合内容错误。

我必须添加或更改哪些代码才能使其正常工作?

要检查所有代码,请随意查看https://github.com/harmjanbeekhuis/reddingsbrigadededukers。我很高兴提供解决此问题所需的任何进一步信息。

Har*_*uis 8

经过更多研究和大量试验和错误后,我发现错误出现在 XMLHttpRequest 而不是路由中。将以下部分添加到 AppServiceProvider 就是解决方案。

public function register()
  {
    if (App::environment('production')) {
      $this->app['request']->server->set('HTTPS', true);
    }
  }
Run Code Online (Sandbox Code Playgroud)