How to force Laravel Project to use HTTPS for all routes?

Nelson Melecio picture Nelson Melecio · Mar 6, 2016 · Viewed 139.4k times · Source

I am working on a project that requires a secure connection.

I can set the route, uri, asset to use 'https' via:

Route::get('order/details/{id}', ['uses' => 'OrderController@details', 'as' => 'order.details', 'https']);

url($language.'/index', [], true)

asset('css/bootstrap.min.css', true)

But setting the parameters all the time seems tiring.

Is there a way to force all routes to generate HTTPS links?

Answer

Amitesh Bharti picture Amitesh Bharti · Aug 13, 2018

Place this in the AppServiceProvider in the boot() method

if($this->app->environment('production')) {
    \URL::forceScheme('https');
}