在 Hostgator 上使用 PHPMailer(尝试登录 SMTP 服务器时超时)

在 Hostgator 上使用 PHPMailer(尝试登录 SMTP 服务器时超时)

解决了:问题是,要通过 hostgator 使用该服务,由于某种原因,用户必须使用主 dsn 名称而不是 SMTP 域名登录。

我使用简单的 PHPmail()函数发送电子邮件,它运行良好,但不需要登录 SMPT 服务器。当我转到PHPMailer图书馆时,我编写了此代码来发送电子邮件,但当我尝试执行此登录时出现超时。根据 hostgator 的信息,SMTP 服务器(使用 SSL/TSL)位于端口465。所以我写道:

$mail = new PHPMailer;

$mail->SMTPDebug  = 3;
$mail->isSMTP();                                       // Set mailer to use SMTP
$mail->Host       = 'mail.mydomain.com';               // Specify main and backup SMTP servers
$mail->SMTPAuth   = true;                              // Enable SMTP authentication
$mail->Username   = '[email protected]';            // SMTP username
$mail->Password   = 'pass';                            // SMTP password
$mail->SMTPSecure = 'tls';                             // Enable TLS encryption, `ssl` also accepted
$mail->Port       = 465;                               // TCP port to connect to
$mail->setFrom('[email protected]', 'my name');
$mail->addAddress('[email protected]', 'someone');        // Add a recipient

$mail->addReplyTo('[email protected]', 'my name');
$mail->isHTML(true);                                   // Set email format to HTML

$mail->Subject = 'subject';
$mail->Body    = 'msg body <b>bold!</b>';
$mail->AltBody = 'Corpo alternativo caso o primeiro não seja exibido';

if(!$mail->send())
{
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
}
else
{
    echo 'Message has been sent';
}

但是当调用这个 php 文件时,除了不显示echo我放在代码前面的内容外,它还等待了 300 秒才打开一个模式警告我超时错误。提前致谢。

答案1

我认为答案就在您的代码中。您有类似“$mail->Host = 'mail.mydomain.com';请务必将所有这些替换为实际域名”的行。您必须使用您的www.com网站域名。

下列说法错误的是。

$mail->Host       = 'mail.mydomain.com';               // Specify main and backup SMTP servers

我对它无法发送并不感到意外。将所有值替换为对您的网站重要的实际字符串。

答案2

PHP 的 mail() 函数和 PHP Mailer 的工作方式存在一些差异。mail() 函数直接从脚本所在的服务器发送邮件,而您的托管服务提供商可能使用单独的服务器来发送电子邮件。因此,我建议您将 SMTP 服务器的 FQDN 设置为,$mail->Host并确保该$mail->SMTPSecure属性实际上是 tls 或 ssl。

但是,您的代码无法正常工作的原因可能有很多,除非您发布所使用的确切代码(当然,不包含密码),否则我怀疑能否提供足够的帮助。还建议联系网站托管支持。

相关内容