2016-10-11 4 views
1

を「なりすまし」ときスパムとしてマークされないようにする方法メールボックスに入れます。連絡フォームから到着した電子メールが、[email protected]ではなく、データを送信したユーザーから送信されたように見せたいと思います。phpmailerの+のPostfix:私は問い合わせフォームから情報を取得するためにphpmailerのとのPostfixの組み合わせを使用してい</p> <p>:これは私のような状況で、ユーザーの電子メール

私は今、これを解決する方法は、電子メールや名前から、そのように設定することにより、次のとおりですので、メールから設定するのは、私の電子メールプロバイダ(:

$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('[email protected]'); 

$m->Subject = $subject; 
$m->Body = $message; 
+0

これを行う唯一の方法afaikは、そのドメインの実際のメールサーバーにSPFレコードまたはDKIMを追加することです。それは本当にそのメールサーバーで、他のメールサーバー(電子メールの送信元がそのドメインからの送信を許可されているかどうかをチェックするとき)に「はい、そのサーバーはこのドメインの電子メールを送信できます。多かれ少なかれ –

+0

特定ドメイン(私のドメイン)がなりすましでスパムとして分類されないことを電子メールプロバイダに知らせる方法はありますか? – idix

答えて

1

いいえ、あなたはアドレスから偽造し、それが動作するように期待することはできません。正しい方法は、自分のアドレスを送信元アドレスに、送信者のアドレスを返信先に入れることです。送信者のという名前をと一緒に送信元アドレスに設定すると、視覚的な混乱を避けることができます。この方法では、それは提出者からのもので、返信は適切な場所に行き、あなたは何も偽造していないように見えます。

$m->setFrom('[email protected]', $name); 
$m->addAddress('[email protected]'); 
$m->addReplyTo($email); 
+0

私はそれほど多くのことを考えました...これは最良の解決策です。 – idix

+0

偽造されたアドレスからDKIM署名を行うことはできません。これは現在、主要ISPに配信する必要があります。 – Synchro

関連する問題