I had this problem and couldn’t work out what I’d done wrong
I installed WordPress in a .com/blog directory
It all went well. I could log in to admin and I could see the live blog. Then I went into Settings>Permalinks to change Default to Post Name and then when I saved changes I was directed to the log in page and the log in no longer let me in…and the public side didn’t work either.
If this happens to you it’s likely there’s something wrong with the .htaccess file and here’s a quick fix
delete your current .htaccess in the /blog directory
upload a new blank replacement .htaccess
set chmod permissions to 666
Log in to wp-admin and set permalinks to desired url structure
Return to .htaccess file and set permissions back to 644 for security
It should now work correctly