gpt4 book ai didi

php - 通过 PHP 发送的 HTML 电子邮件在 Gmail 中被视为垃圾邮件

转载 作者:搜寻专家 更新时间:2023-10-31 20:43:11 24 4
gpt4 key购买 nike

我有以下 php 脚本,它从我服务器上的 .txt 文件加载一个 html 模板,并在发送电子邮件之前使用 str_replace 用电子邮件内容填充模板。

起初,我尝试将服务器上的 Webmail 地址硬编码到 mailer_send 函数的“收件人”字段中,效果很好。电子邮件模板完美显示。但是,当我随后尝试将它发送到 Gmail 帐户时,它被标记为垃圾邮件,而 HTML 仅显示为纯文本。有谁知道我是否需要在电子邮件中包含任何其他 header 以确保 Gmail 正确处理它?<​​/p>

理想情况下,我想通过服务器上的网络邮件向自己发送电子邮件,然后向用户发送自动回复以感谢他们的询问,但如果邮件始终被视为垃圾邮件,则无法实现。

<?php
function mailer_send($mailer_recipient, $mailer_subject, $mailer_message){
$mailer_headers = 'From: webmaster@example' . '\r\n' .
'X-Mailer: PHP/' . phpversion() . '\r\n' .
'MIME-Version: 1.0\r\n' . '\r\n' .
'Content-Type: text/html; charset=ISO-8859-1\r\n';
mail($mailer_recipient, $mailer_subject, $mailer_message, $mailer_headers);
}

$name = $_POST['inputName'];
$email = $_POST['inputEmail'];
$message = strip_tags($_POST['inputMessage']);
$template = file_get_contents('email_templates/template.txt');
$template2 = $template;
$template = str_replace('[email_content]',$message, $template);

mailer_send('test@gmail.com','Test Email',$template);

$message2 = '<h2>Thanks..</h2><br/><p>Dear' . $name . '</p><br/><p>Thanks for your enquiry. Jason will get back to you with a quote as soon as possible.</p>';
$template2 = str_replace('[email_content]', $message2, $template2);
mailer_send($email,'Thankyou for your Enquiry',$template2);
?>

提前致谢。

附加:

当在 Gmail 中收到电子邮件时,它似乎忽略了发件人 header ,只是说电子邮件来 self 的网络托管提供商服务器。

最佳答案

gmail 怀疑电子邮件是垃圾邮件的原因有百万种。

我要做的第一件事是使用一个能够正确处理 header 的库 -> http://swiftmailer.org/

其次,确保您的发件人主机来自与服务器相同的 IP 并具有正确的 MX 记录。

关于php - 通过 PHP 发送的 HTML 电子邮件在 Gmail 中被视为垃圾邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17748692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com