Skip to main content

Control registrationn in laravel

https://stackoverflow.com/questions/42695917/laravel-5-4-disable-register-route/42700000
https://laracasts.com/discuss/channels/general-discussion/disable-registration-in-built-in-registration-laravel-53?page=1

These above link are references





I did this by changing the constructor in Auth\RegisterController.php From:
    public function __construct()
    {
        $this->middleware('guest');
    }
to:
    public function __construct()
    {
        $this->middleware('auth');
    }

This way you can create new users if you want, but you have to be logged in first.

You could try this.
Route::match(['get', 'post'], 'register', function(){
    return redirect('/');
});
Add those routes just below the Auth::routes() to override the default registration routes. Any request to the /register route will redirect to the baseUrl.

This is deceptively easy! You just need to override two methods in your app/Http/Controllers/Auth/RegisterController.php Class. See below which will prevent the form from being displayed and most importantly block direct POST requests to your application for registrations..
/**
 * Show the application registration form.
 *
 * @return \Illuminate\Http\Response
 */
public function showRegistrationForm()
{
    return redirect('login');
}

/**
 * Handle a registration request for the application.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return \Illuminate\Http\Response
 */
public function register(Request $request)
{
    abort(404);
}

Auth::routes();//Replacement of 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...//        Route::get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');//        Route::post('register', 'Auth\RegisterController@register');//Another route file to redirect register in home//only this route below Auth::routes() will solve problem/*Route::match(['get', 'post'], 'register', function(){    return redirect('/');});*///Another route file to redirect register in home
// 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');//Replacement of auth::routes()

Comments

Popular posts from this blog

laravel file manager sorting by time default

Ref :  https://github.com/UniSharp/laravel-filemanager/issues/337 To load files order by "time DESC" you can change the code in vendor/unisharp/laravel-filemanager/src/traits/LfmHelpers.php public function sortFilesAndDirectories($arr_items, $sort_type) { if ($sort_type == 'time') { $key_to_sort = 'updated'; } elseif ($sort_type == 'alphabetic') { $key_to_sort = 'name'; } else { $key_to_sort = 'updated'; } return strcmp($a->{$key_to_sort}, $b->{$key_to_sort}); }); return $arr_items; } with public function sortFilesAndDirectories($arr_items, $sort_type) { if ($sort_type == 'time') { $key_to_sort = 'updated'; } elseif ($sort_type == 'alphabetic') { $key_to_sort = 'name'; } else { $key_to_sort = 'updated'; ...

creating subdomain and upload

step 1: create subdomain step 2: create database step 3: set username and passwore to database step 4: change php version from multiphp manager to 7.1 or 7.2 step 5: open subdomain from file manager and remane public step 6: upload zip project file step 7: unzip and move all file outside of the projct name folder i.e subdomain vitra siddhai sabai files and folder rakhdini step 8: edit env file db name, user name, and password