13
我试图用PHPMailer发送电子邮件与SMTP和Gmail。我使用的确切脚本适用于其他服务器,但它不适用于此特定托管公司的服务器。如何检查端口465和587是否用PHP打开?
我检查了phpinfo()
和它告诉我,allow_url_fopen
是on
并没有像disabled_functions
上市fopen
。
的脚本失败,它告诉我或者:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
否则
SMTP Error: Could not authenticate.
我假设这是因为它无法连接,因为再在其他服务器和这项工作认证凭证是正确的。
所以我更一般地问,有没有办法可以使用PHP或jailshell ssh
来检查并查看端口是否实际打开?
+1为了记录,这是PHPMailer用于连接到SMTP服务器的相同方法(除了更长的超时时间和重试次数外)。 – webbiedave 2012-04-12 16:59:35
谢谢。我还了解到,即使端口处于打开状态,但有时中继功能仍处于禁用状态。任何方式来检查与PHP? – cwd 2012-04-16 18:56:58
@cwd:您需要发送适当的SMTP命令,并使用'fsockopen'返回的句柄上的'fwrite'和'fread'来检查响应。 – netcoder 2012-04-16 19:14:42