laravel 强制跳转 https 解决办法

1 篇文章 0 订阅
1 篇文章 0 订阅

路由要从http redirect 到 https,可以改 nginx/apache 配置。如果不想在web server中做这些修改配置,可以尝试在laravel框架中解决

在网上里看到的一个方案是 写一个 全局中间件,将所有的请求转换成 https 【利用$request->scure() 来判断 和 转化】
不过我发现这个做法在直接访问首页的时候并不能实现转化 (route为 ” / ” 的时候)

然后换了方法:

1.在 app/Providers/AppServiceProvider.php 的 boot()方法 中 添加
  URL::forceScheme('https');
2.在路由文件web.php中 添加

/****  以下两次跳转是为了实现所有请求跳转到https  start******/
Route::get('/', function () {
    return redirect('/login');
});

Route::get('/login', function(){
    return redirect('/static/#/login');
});
/****  两次跳转是为了实现所有请求跳转到https end ******/

关键是将对首页的访问 重定向到一个新的laravel路由,这样它就会走 forceScheme 的流程,之后的所有请求都是https了

solved~!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值