วิธีต่อไปนี้ใช้งานได้ดี:
คัดลอกทุกเส้นทางจาก/vendor/laravel/framework/src/Illuminate/Routing/Router.php
และวางลงและแสดงความคิดเห็นออกหรือลบweb.php
Auth::routes()
จากนั้นตั้งค่าเงื่อนไขเพื่อเปิดและปิดการลงทะเบียนจาก. env ทำซ้ำ503.blade.php
ไฟล์ในviews/errors
และสร้าง 403 ต้องห้ามหรืออะไรก็ได้ที่คุณต้องการ
เพิ่มALLOW_USER_REGISTRATION=
ลงใน. env และควบคุมการลงทะเบียนผู้ใช้โดยตั้งค่าเป็นจริงหรือเท็จ
ตอนนี้คุณสามารถควบคุมเส้นทางได้เต็มรูปแบบและไฟล์ของผู้ขายยังคงไม่มีใครแตะต้อง
web.php
//Auth::routes();
// Authentication Routes...
Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('login', 'Auth\LoginController@login');
Route::post('logout', 'Auth\LoginController@logout')->name('logout');
// Registration Routes...
if (env('ALLOW_USER_REGISTRATION', true))
{
Route::get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');
Route::post('register', 'Auth\RegisterController@register');
}
else
{
Route::match(['get','post'], 'register', function () {
return view('errors.403');
})->name('register');
}
// Password Reset Routes...
Route::get('password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
Route::post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
Route::get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
Route::post('password/reset', 'Auth\ResetPasswordController@reset');
นี่คือการรวมกันของคำตอบก่อนหน้านี้โดยเฉพาะอย่างยิ่ง Rafal G. และ Daniel Centore