From time to time I get blocked by hotmail servers.
The reason, as far as I digged in, is because my server is sending mails for non-existing users.
Hotmail seems to interpret these attempts as "if the user doesn't exist and you are attempting to mail it, you might be a spammer".
Since my DB is a bit old (has records from ~7 years ago), some emails, indeed, no longer exist - as well as some mail servers.
Two Scenarios: bad user input and inexistent email
- BAD USER INPUT
John's email is johndoe@hotmail.com
But he inputs it as:
johndeo@hotmail.com
johndoe@ohtmail.com
Obviously, it will fail to deliver and Hotmail may interpret these attempts as email mining.
- INEXISTENT EMAIL
Hotmail mail accounts are deleted after a certain period* of inactivity. That said, obviously, I can't mail them.
When a user tries to recover his account at my server, it may happens that the email he used to sign up isn't used by him and it no longer exists. I cannot know or control that and then the account recovery email will be sent anyway. Again, Hotmail may interpret it as email mining, since the best practices establishes that "one should know his receiver's correct and updated email".
*365 days as of this article: my hotmail has been deleted
HOW CAN I FIND OUT IF AN EMAIL EXIST?
How can I find if an email exists beforehand sending it my message?
The moment the user clicks the "Forgot Password" link and inputs his email, what PHP measures can I take to let him know that he inputted a non-existing email?