gpt4 book ai didi

url - Laravel 从路由生成安全的 https URL

转载 作者:行者123 更新时间:2023-12-03 08:33:08 25 4
gpt4 key购买 nike

编辑

我真的找不到从路由名称生成安全 URL 的方法。

要获得完整的 URL,我使用

echo route('my_route_name');

但是,如果我想要一个带有 https 的 URL,该怎么办?

最佳答案

更新: 正如评论中指出的那样,一种更简单的方法是在您的 URL::forceSchema('https'); 方法中为 4.2-5.3 之间的 Laravel 版本添加 URL::forceScheme('https'); 或为 5.4+ 版本添加 boot AppServiceProvider 文件。

旧答案:

这实际上是完全可能的,并且只需要一行代码即可完成。

Laravel 本身不会检查 SSL 的存在,它取决于 Symfony。我们的关键是让它相信当前的请求是安全的。

问题是,我们必须将 HTTPS server param 设置为 true,最简单的方法是将以下代码粘贴到 bootAppServiceProvider 方法中:

$this->app['request']->server->set('HTTPS', true);

就我而言,我只需要在生产中强制使用 SSL,本地 env 应该仍然可以在 http 上工作。这就是我仅在生产中强制使用 SSL 的方式:
$this->app['request']->server->set('HTTPS', $this->app->environment() != 'local');

顺便说一句,请注意这些条款,您将来可能需要它们。

关于url - Laravel 从路由生成安全的 https URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24426423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com