带有 SMTP 详细信息的 PHPMailer

PHPMailer with SMTP details

我想从我的 php 表单发送邮件。最初我使用 php 邮件功能并且它工作正常。但我最近将我的服务器从 windows 转移到 Linux,其中 SMTP 是强制性的。我无权访问 php.ini 文件。因此我正在使用 phpMailer 函数。但是当我使用 phpMailer 时,它给了我以下错误

Invalid address: (punyEncode) abc-domain Mailer Error: Invalid address: (punyEncode) abc-domain.

我的用户名不是我的邮件地址,即 abc@domain.com,而是 abc 域。这是我的代码。我在名为 PHPMailer 的文件夹中有 PHPMailer 文件。

<?php
require('PHPMailer/PHPMailerAutoload.php');

$mail = new PHPMailer;

$mail->CharSet = "UTF-8"; 


$mail->SMTPDebug = 3;                               

$mail->isSMTP();            

$mail->Host = "mail.abc.com";

$mail->SMTPAuth = true;                          

$mail->Username = "abc-domain";                 
$mail->Password = "abc123";                           

$mail->Port = 25;                                   

$mail->From = "abc-domain";
$mail->FromName = "Webmaster-Domain";

$mail->addAddress("xyz@domain.com", "xyz");

$mail->isHTML(true);

$mail->Subject = "Subject Text";


$mail->Body = '<h1 style="font-family: Arial;">HTML Text</h1>';

if(!$mail->send()) 
{
    $mail->SMTPDebug = true;
    echo "Mailer Error: " . $mail->ErrorInfo;
} 
else 
{
    echo $success;
}
?>

有没有办法通过 .htaccess 设置 SMTP 详细信息?

问题就在这里

$mail->发件人 = "abc-domain";

它应该是一个有效的电子邮件,即使您的用户不是(没关系,因为您只需要在这里 $mail->用户名)