Laravel开启HTTPS

作者: ONEDAYLOG | 来源:发表于2017-08-16 08:59 被阅读305次

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

    阿里.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就成功了

    完成图.png

    相关文章

      网友评论

      • 3e50548e6c15:�你好,请问那个修改成相对路径具体是什么意思?
        ONEDAYLOG:就是paginate封装在拼接分页的url时候,默认是http的,需要改成HTTPS

      本文标题:Laravel开启HTTPS

      本文链接:https://www.haomeiwen.com/subject/mqibrxtx.html