これは私の状況です:
PHPMailer と Postfix の組み合わせを使用して、連絡先フォームからメールボックスに情報を取得しています。お問い合わせフォームから届いた電子メールが、データを送信したユーザー (root@domain.com からではなく) から送信されたかのように見せたいと考えています。
私が今これを解決する方法は、送信者の電子メールと名前を次のように設定することです。
$m->setFrom($email, $name);
発生する問題は次のとおりです。差出人メールを設定したため、メール プロバイダー (zoho) はそれをスパム メッセージと見なし (技術的にメール アドレスを偽装しているためだと思います)、スパム フォルダーに分類されます。 .
受信トレイに送信する方法はありますか? 「なりすまし」送信者 (つまり、私のサーバー) をホワイトリストに登録する方法はありますか?
From email フィールドをそのままにして、$m->addReplyTo
. しかし、メール アカウントを使用しているのは私だけではなく、混乱を避けたいと考えています。私が言いたいのは、誰かがメールを受信し、特定の名前を見て、その名前と一致しないメールアドレスを見つけた場合、混乱したり、その人に返信または新しいメールを送信する際にエラーを起こしたりする可能性があるということです(実際にはサーバーに返信するだけです)。だから、それは私にはあまり実現不可能な解決策です。
これは、電子メール セットアップの完全なコードです。
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$m = new PHPMailer;
$m->isSendmail();
$m->setFrom($email, $name);
$m->addAddress('my@inbox.com');
$m->Subject = $subject;
$m->Body = $message;