菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
34
0

laravel 配置HTTPS

原创
05/13 14:22
阅读数 49531

标签:更换   inf   ons   resolve   图片   framework   开头   done   function   

关于配置laravel的https,其实不难,关键是要找对地方,修改了就能立马用,当然这前面你还需要配置nginx的证书之类的,这个今天我们不讲,重点提下laravel内的,必须要操作的几个地方。

第一个位置 .env文件
目的:设置网站默认地址

APP_URL=https://www.你的域名.com  // 注意:这这里是https

  

第二个位置 App\Providers\AppServiceProvider.php 文件
目的:替换所有的访问为https

public function boot(UrlGenerator $url)
    {
        //HTTPS
        $url->forceScheme(‘https‘); //这里用https,没有的话自己添加下
    }

  

第三个位置 vendor/laravel/framework/src/Illuminate/Pagination/PaginationServiceProvider.php文件
目的:处理分页连接也为https开头的

Paginator::currentPathResolver(function () {
            //return $this->app[‘request‘]->url(); // 注释掉这一行
            $newUrl = $this->app[‘request‘]->url();
            return str_replace(‘http‘, ‘https‘, $newUrl); //替换默认的http
        });

  

 

强制 Laravel 使用 HTTPS

在你的 Providers\AppServiceProvider 的 boot 方法中添加:

\URL::forceScheme(‘https‘);

  


Done. 现在你的所有生成的路由链接已经默认是 HTTPS 了。当然你也可以用 Nginx 来做非 HTTPS 跳转,只是我觉得这个方法更加简单。

注意:

forceScheme 这个函数在 5.4 的时候更换过名称 , L5.3 及以下版本请使用

\URL::forceSchema(‘https‘);。

  

 

技术图片

 

 

public function boot()
    {
        //
        $this->app[‘request‘]->server->set(‘HTTPS‘, $this->app->environment() != ‘local‘);      //让Laravel支持https,且区分本地
 
}

  

laravel 配置HTTPS

发表评论

0/200
34 点赞
0 评论
收藏
为你推荐 换一批