Cara Mengubah Lokasi File Login Laravel 5.6
Secara default, Laravel menggunakan file login.blade.php yang terletak di dalam folder resources/views/auth/ sebagai lokasi view form login. Lalu seandainya kita mempunyai nama file yang berbeda, seperti misalnya signin.blade.php yang terletak dalam folder resources/views/admin/auth/, bagaimana kita bisa mengubahnya agar saat kita mengetikkan url di browser: http://localhost:8000/login maka alamat itu akan membawa kita ke tampilan form signin.blade.php?
Ternyata caranya cukup mudah, kita hanya buka file LoginController.php yang ada di folder app/Http/Controllers/Auth/ lalu tambahkan baris berikut:
public function showLoginForm()
{
return view('admin.auth.signin');
}
Kenapa ditulis admin.auth.signin ? sesuaikan dengan letak file-nya yang ada di dalam folder admin/auth/ lalu tulis nama file login-nya yaitu signin.blade.php (cukup ditulis signin tanpa akhiran .blade.php).
Lalu bagaimana kalau kita ingin mengubah url login Laravel dari http://localhost:8000/login menjadi http://localhost:8000/admin/login ? Caranya dengan memodifikasi route di web.php yang terletak di dalam folder routes.
Pertama-tama hapus dulu kode berikut:
Auth::routes();
Lalu, masukkan baris berikut:
Route::get('/admin/login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('/admin/login', 'Auth\LoginController@login');
Route::post('/admin/logout', 'Auth\LoginController@logout')->name('logout');
Route::get('/admin/register', [
'as' => 'register',
'uses' => 'Auth\RegisterController@showRegistrationForm'
]);
Route::post('/admin/register', [
'as' => '',
'uses' => 'Auth\RegisterController@register'
]);
Jika kita ingin melakukan redirect pada url http://localhost:8000/login sehingga secara otomatis akan mengarah ke http://localhost:8000/admin/login, caranya dengan menambahkan kode berikut:
Route::get('/admin', function() {
return redirect()->route('login');
});
Semoga bermanfaat