如果网络服务器没有安装加密层,Laravel 5.7 不会生成 HTTPS 路由

Ráp*_*rás 2 ssl laravel laravel-5 laravel-middleware laravel-5.7

当前的服务器设置如下所示。

具有指向多个 docker 容器的 nginx 反向代理的服务器。我们的 Laravel 5.7 应用程序使用 nginx + php7.2 FPM 在这些容器之一中运行

docker 内部的网络服务器应该向反向代理传递一个不安全的响应,这使得它在外层是安全的。

容器化 Web 服务器侦听 80。

Laravel 生成的所有 URL 都是 HTTP,即使在 config/app.php APP_URL 设置中明确指定协议为 HTTPS。

我还尝试了其他一些技巧,sslizing 中间件等,但似乎都不起作用。

任何想法?

Mar*_*łek 5

您应该在中间件https://github.com/laravel/laravel/blob/master/app/Http/Middleware/TrustProxies.php中填写$proxies属性,例如:TrustProxies

protected $proxies = [
  'ip1',
   'ip2',
];
Run Code Online (Sandbox Code Playgroud)

您可以在配置可信代理部分阅读更多相关信息