您现在的位置是: 网站首页> PHP> Laravel Laravel
laravel 强制生成https链接
Smile 2020-03-19 23:54:13 PHP Laravel 阅读:2076
简介最近上线一个laravel搭建网站时发现使用了SSL证书,但是网页里面生成的链接却全是http的,并没有生成想象中的https链接,搜索了一下,发现有几种解决办法
1、laravel 的 asset() 方法,默认是生成的是 http,可以传递第二个参数为 true 可生成 https
<link rel="stylesheet" type="text/css" href="{{ asset('index/css/index.css',true) }}" />
2、使用辅助函数url()生成url链接时,也可以添加参数true
url("/detail.html",[],true);
3、上面两个方法都是生成的时候传递参数true生成https链接,但是一个网站那么多链接,一个一个传递肯定不现实
更好的解决办法如下
(1)在项目根目录的.env配置文件添加
IS_HTTPS = true;
(2)在app/Providers/AppServiceProvider.php的boot方法中添加
if(env('IS_HTTPS')) {
\URL::forceScheme('https');
}
如果是 Laravel 5.3 以下版本,则需要使用:
if(env('IS_HTTPS')) {
\URL::forceSchema('https');
}
这样使用asset()、url()、route()函数就可以生成https链接了
很赞哦! (0)