Laravel开启HTTPS

为什么要开启https这片老文章里面已经写了一些了,https有很多我用的是通配符的证书,阿里云上GeoTrust只要1500,感觉比别家的都便宜好用。配合阿里云的CDN配置,可以简单的使用。

Laravel开启HTTPS_第1张图片
阿里.png

假设你的服务器已经配置好了https并且开启了https

Laravel开启使用https原本以为只要配置一下env文件的APP_URL就可以了

APP_URL          = https://bgjd.sxol.com

但是并没有什么用laravel的url(),asset(),调用的全都是http下的资源。

AppServiceProvider.php加入如下代码即可,当然可以稍做修改,写成根据访问连接是http或https自动判断

    public function boot(UrlGenerator $url)
    {
        if(env('REDIRECT_HTTPS'))
        {
            $url->forceSchema('https');
        }
    }

到这里引用的资源都改成HTTPS的资源


laravel 自带的paginate分页生成的url都是http的需要改成相对路径大致如下

        $snapshots = Snapshots::where('users_id', '=', $user_id)->orderBy('created_at', 'desc')->paginate(10);
        $snapshots->setPath('');

好了基本只要把http的连接都改成https就成功了

Laravel开启HTTPS_第2张图片
完成图.png

你可能感兴趣的:(Laravel开启HTTPS)