If you work with WordPress a lot I am sure at one point you may have run into this issue. I am going to give you some solutions from my experience.
Change plugin folder name : Change the name of your plugins folder to something like plugins.old then create a new folder named plugins. See if you can now login to your site. If you can login to the site then this means you have a plugin issue. Start adding the plugins from plugins.old into the empty plugins folder until your login breaks again and you will know which plugin is the issue. Sadly this is not always the fix so on to fix number 2
Remove htaccess file: Try removing the .htaccess file and trying to login to the site again. You can check and see if a plugin has changed or added to this file and that can be removed to fix the issue. Here is a link to WordPress.org about .htaccess files https://codex.wordpress.org/htaccess
Fix wp-config file: Another one of the culprits could be the wp-config file. Login into your hosting account and get the database info for the database you are using. Login to your FTP and erase the wp-config file which is found in the root of your WordPress install. Then reload the site in your browser and it will walk you through resetting up the database. Using the hosting info you got fill in the info and reconnect to the same database. Sometimes plugins change this file and this is a easy way to revert the file to default while using the same database. This has fixed the login issue most the time for me.
Change site url settings: Login to your PhpMyAdmin and go to wp-options. Not check the site URL and make sure it matches the site. Now try adding www.yoursite to these fields adding the WWW could fix the issue.
Clear your cookies: Try clearing your browser cookies and trying again if you have had no luck with these steps.