Php 如何更改;从「;从cpanel发送电子邮件时的标题?

Php 如何更改;从「;从cpanel发送电子邮件时的标题?,php,email,gmail,Php,Email,Gmail,我正在尝试使用mail()函数从我的网站向我的gmail帐户发送电子邮件。这工作正常,但问题是,当我在我的gmail帐户收件箱(不是垃圾邮件)中收到邮件时,会有一个“?”标记,而不是常规的空白个人资料图片。当我将鼠标悬停在“?”标记上时,会弹出一条消息:“Gmail无法验证mywebsite.com是否确实发送了此消息(而不是垃圾邮件发送者)”。我已经添加了这一问题的两张图片。我联系了我的主机提供商,他们告诉我这是一个与脚本相关的问题。他们分析了我通过点击gmail收件箱中的“ShowOrigi

我正在尝试使用mail()函数从我的网站向我的gmail帐户发送电子邮件。这工作正常,但问题是,当我在我的gmail帐户收件箱(不是垃圾邮件)中收到邮件时,会有一个“?”标记,而不是常规的空白个人资料图片。当我将鼠标悬停在“?”标记上时,会弹出一条消息:“Gmail无法验证mywebsite.com是否确实发送了此消息(而不是垃圾邮件发送者)”。我已经添加了这一问题的两张图片。我联系了我的主机提供商,他们告诉我这是一个与脚本相关的问题。他们分析了我通过点击gmail收件箱中的“ShowOriginal”得到的文件。他们说,问题的出现是因为gmail收到的“发件人”电子邮件地址是“cpanel”-username@server-hostname.com“而不是”myemail@website.com". 我必须替换“cpanel”-username@server-hostname.com“带有”myemail@website.com". 我尝试了很多,但无法更改“from”标题。我的代码是这样的

$Email = "myemail@gmail.com";
$message = "Hello!!";
$headers = "From: Mywebsite <noreply@mywebsite.com>";

$sentmail = mail("$Email",'Something Important',"$message",$headers);
require 'mailer/PHPMailerAutoload.php';

$mail = new PHPMailer;

$mail->isMail();    // I also tried $mail->isSMTP(), but it does not work. Just keeps loading the page but never completes.
$mail->Host = 'localhost';
$mail->SMTPAuth = true;
$mail->Username = 'noreply@mywebsite.com';
$mail->Password = '****************';
$mail->SMTPSecure = 'tls';
$mail->Port = 365;

$mail->setFrom('noreply@mywebsite.com', 'Mywebsite');
$mail->addAddress('myemail@gmail.com');

$mail->isHTML(true);

$mail->Subject = 'Something Important';
$mail->Body    = 'Hello!!';

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

但这也不能解决我的问题。from标题仍然是“cpanel”-username@server-在gmail中接收邮件时使用“hostname.com”。请有人帮我解决这个问题

您可以添加-fuser@domain.tld到php.ini中的mail.force_额外_参数行。 请参阅此处提供的解决方案。它帮助了我。

您找到解决方案了吗?我也面临同样的问题。后来我用PHP编译器解决了我的问题