Solved: After creating a staging site the wp-login is working then I push it back to live site, at first the live site still not working but after 1 day its now working. I did not make other changes so i guess its the cache.
This issue can also be caused by a site_url that doesn't match the exact URL.
In my case, my site_url and home were //127.0.0.1, which I use to have the flexibility of using http or https, so I did:
// Identify the relevant protocol for the current request
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT']...