早上好, 我想删除gmail警告'当我用php发送电子邮件时,gmail不会验证... @ ...发送此消息'。
我知道这是因为我使用了没有身份验证的电子邮件功能php所以我尝试PHPMailer和PHP梨,但页面转向并转向无限,没有任何事情发生。 我的主人是1& 1。 我尝试使用gmail而不是smtp和帐户而不是1& 1但结果相同。
<?php
// Pear Mail Library
require_once "Mail.php";
$from = '<***@motelavigna.co>'; //change this to your email address
$to = '<***@gmail.com>'; // change to address
$subject = 'Insert subject here'; // subject of mail
$body = "Hello world! this is the content of the email"; //content of mail
$headers = array(
'From' => $from,
'To' => $to,
'Subject' => $subject
);
$smtp = Mail::factory('smtp', array(
'host' => 'auth.smtp.1and1.fr',
'port' => '465',
'auth' => true,
'username' => '***@***.co', //co is not an error
'password' => '***' // your password
));
// Send the mail
$mail = $smtp->send($to, $headers, $body);
?>
感谢。
答案 0 :(得分:2)
我最近也遇到过这个问题并且意识到问题不是来自PHP脚本,正如我首先想到的那样,而是因为没有域名的SPF记录。
SPF记录标识允许哪些邮件服务器从特定域名发送电子邮件。如果该域名没有SPF记录,则Gmail无法验证该电子邮件是否来自正确的位置。
巧合的是我也是1&amp; 1,所以请看here for how to set up SPF records for 1&1。您需要使用的值是:
v=spf1 include:_spf.perfora.net include:_spf.kundenserver.de -all
您还可以点击Gmail中电子邮件顶部的箭头,然后按&#39;显示原始文件&#39;来检查电子邮件是否通过了SPF测试。