নিম্নলিখিত পদ্ধতিটি দুর্দান্ত কাজ করে:
সমস্ত রুট অনুলিপি করুন /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');
এটি পূর্ববর্তী কয়েকটি উত্তরগুলির উল্লেখযোগ্যভাবে রাফল জি এবং ড্যানিয়েল সেন্টোরের সংমিশ্রণ।