I'm trying to use PHPMailer to send e-mails with SMTP and gmail. The exact script am using works on other servers but it is not working on this particular hosting company's server.
I have checked the phpinfo()
and it tells me that allow_url_fopen
is on
and there are no disabled_functions
like fopen
listed.
The script fails and it tells me either:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
or else
SMTP Error: Could not authenticate.
I'm assuming this is because it can not connect, because again this work on other servers and the authentication credentials are correct.
So I ask more generally, is there a way I can use PHP or jailshell ssh
to check and see if the ports are actually open or not?
You can check for open/available ports with
fsockopen
:...where
5
is the timeout in seconds until the call fails.This is probably due to a firewall issue where your hosting provider is blocking you from connecting to outbound sockets and/or specific ports. Keep in mind that it is a very usual security configuration to block outbound SMTP ports. Back in the day, only port
25
was blocked, but I'm starting to see more and more SSL variants being blocked as well.Most providers and hosting companies will only allow you to connect to their own SMTP server to prevent spammers from relaying junk mail.