ahmadajah03 Sun Jan 2021 1 year ago

Redirect HTTP ke HTTPS Menggunakan Laravel Middleware

Ada banyak cara untuk mengalihkan HTTP pengguna ke HTTPS. Kita bisa melakukan redirect menggunakan .htaccess, Nginx config dll. Hari ini kita akan melakukan ini menggunakan middleware Laravel. Saya berasumsi Anda sudah menginstal SSL di server Anda atau hosting web Anda menyediakan SSL. Jadi ayo mulai.

Kita perlu membuat middleware. Mari buat middleware bernama SecuredHttp:

php artisan make:middleware SecuredHttp

Buka app\Http\Middlewarefolder dan buka file SecuredHttp.php. Kami akan mengubah metode handle() . Cukup salin & tempel kode ini:

public function handle($request, Closure $next){
  if (!$request->secure()) {
      return redirect()->secure($request->path());
  }
  return $next($request);
}

Middleware ini akan memeriksa permintaan yang tidak aman dan akan mengarahkan ke protokol yang diamankan.

Kita perlu melakukan satu hal lagi. Kita perlu mendaftarkan middleware yang baru dibuat di Kernel. Buka file  app/Http/Kernel.php dan dalam $middlewarearray cukup masukkan middleware seperti ini:

protected $middleware = [
   ....
   \App\Http\Middleware\SecuredHttp::class,
   ....
];

Itu dia. Sekarang semua permintaan tidak aman akan diarahkan ke protokol aman.🙂

laravel