最近在使用 Laravel 的队列发送邮件,由于邮件中需要附上网站的链接地址,所以使用了 route() 方法来进行渲染。邮件可以正常发出,但是却发现本来是 HTTPS 的链接地址,在邮件中却成为了 HTTP,影响展示效果,于是搜索了一下,找到如下几种解决方法:
1、强制 Laravel 使用 HTTPS
在 Providers\AppServiceProvider (或者创建其他的 ServiceProvider 并注册) 的 Boot 方法中添加:
\URL::forceScheme('https')
如果是 Laravel 5.3 以下版本,则需要使用:
\URL::forceSchema('https');
2、定义路由时制定 HTTPS
Route::get('/', ['uses' => 'TestController@index', 'https'])->name('index')
