Most web applications provide a way for users to reset their forgotten passwords. Rather than forcing you to re-implement this on each application, Laravel provides convenient methods for sending password reminders and performing password resets.
Laravel includes Auth\ForgotPasswordController
and Auth\ResetPasswordController
classes that contains the logic necessary to e-mail password reset links and reset user passwords. All of the routes needed to perform password resets may be generated using the php artisan make:auth
Composer package:
Once you have defined the routes and views to reset your user’s passwords, you may access the route in your browser at /password/reset
. The ForgotPasswordController
included with the framework already includes the logic to send the password reset link e-mails, while the ResetPasswordController
includes the logic to reset user passwords.
After a password is reset, the user will automatically be logged into the application and redirected to /home
. You can customize the post password reset redirect location by defining a redirectTo
property on the ResetPasswordController
:
You just need to make some changes on .env , you can find these lines in your env file We are using Gmail SMTP Server to send Email in Laravel for this.
1:- Creating / Using an existing Gmail account to create app passwords.
I’m using my existing Gmail account, butt in case if you wish to create a new account you can go for that also, Clink on this LINK to create one
Next we need to enable 2 step Verification in Gmail as follows:
- Login into Gmail .
- To be able to create app passwords we need to first enable 2 Step Verification .
- Click on the user icon and select “Google Account” .
- Next we need to select Security from the left nav , then select “2 Step Verification” . (Doing this would ask you to login again and then Gmail would authenticate you further using OTP )
- Now we generate the app password that we would be using in the Laravel Application , again clicking on the Google Account in the user icon ->Security ->App Passwords . (This would again ask you to login and then authenticate using OTP)
- We need to select “Mail” as the app and “Other (Custom name)” as the device from the drop downs .
- Selecting this would ask you to add the name of the Application for which you wish to generate the password and once added click GENERATE.
- This would open a pop up with your 16 character app password . (Kindly copy this and keep it safe).
- We are all set to add these detail’s to the Application.
2. Adding Gmail Account detail’s to the Laravel Application:
- We need to edit the following in the .env file
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
with
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=youraccount@gmail.com
MAIL_PASSWORD=yourapppassword
MAIL_ENCRYPTION=ssl
- There is no need for us to make any change in the config/mail.php file , since it would pick the values from the .env file.
- Laravel – select dropdowns that filter results in a table ‘on change’ - October 30, 2021
- What is Rest and Restful API? Understand the Concept - September 5, 2020
- What is API, clear the Concept. - September 5, 2020