URL :: forceSchema在登录前不起作用 [英] URL::forceSchema not working before login
本文介绍了URL :: forceSchema在登录前不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用URL::forceSchema('https')
强制在Laravel 5.3应用程序上使用SSL.但是,它仅在登录后才能使用(即使登录页面未包含https).
I'm using URL::forceSchema('https')
to force SSL on my Laravel 5.3 application. However, it only works after login (even the login page isn't being covered with https).
我在以下配置中使用 TrustedProxy :
'headers' => [
(defined('Illuminate\Http\Request::HEADER_FORWARDED') ? Illuminate\Http\Request::HEADER_FORWARDED : 'forwarded') => null,
\Illuminate\Http\Request::HEADER_CLIENT_IP => 'X_FORWARDED_FOR',
\Illuminate\Http\Request::HEADER_CLIENT_HOST => null,
\Illuminate\Http\Request::HEADER_CLIENT_PROTO => 'X_FORWARDED_PROTO',
\Illuminate\Http\Request::HEADER_CLIENT_PORT => 'X_FORWARDED_PORT',
]
推荐答案
我终于通过将以下代码添加到AppServiceProvider的 register 方法中使它正常工作.
I finally got it working by adding the following code to register method of AppServiceProvider.
if (env('APP_ENV') === 'production') {
$this->app['request']->server->set('HTTPS', true);
}
来源: https ://laracasts.com/discuss/channels/laravel/force-ssl-secure-routes-in-laravel-52?page = 1
这篇关于URL :: forceSchema在登录前不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文