laravel 配置HTTPS


关于配置laravel的https,重点提下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,且区分本地
 
}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM