質問: ユーザ登録時に自動返信されるメールアドレスのfrom実装がうまくいかないので、送信専用のメールアドレスにすることを検討しています ・とりあえず、PHPでfromをmail.xxxx.comで指定しました ・受信したメールを試しに返信してみたら、エラーにならず、送信できてしまいました(mail.xxxx.comの設定が出来ていないので受信もできていません) --- **送信専用のメールアドレスについて** ・「このメールに返信はできません」と書くだけではなく、実際に返信不可なメールを簡単に設定する方法はないですか? ・例えば、example.comのような、誰でもfromで指定できる(かつ返信不可な)「送信専用のメールアドレス」みたいなものはないですか? --- **メール送信エラーについて** ・意図的にメール送信エラーを発生させるにはどうすれば良いですか? ・メールを一旦受け取って、403エラーみたいなレスポンスを返さなければいけない? ・fromを適当に設定したmail.xxxx.comが送信エラーにならないのはなぜですか? ・送信エラー判断は、メーラーによって異なる?? --- **試した内容を本文に追記します** ・1.PHPでhoge.yahoo.co.jpへメール送信しました。fromは「/etc/postfix/main.cfのmyhostnameで設定した値 mail.○○○.net」となっていました ・2.上記だと都合が悪いので、PHPでfromをa.9aade.comに指定して、hoge.yahoo.co.jpへメール送信しました ・3.Yahoo!メ-ルで受信しました。fromはa.9aade.comですが、詳細ヘッダーを確認したら、`Return-Path: `となっていました。Reply-to は見つかりませんでした ・どこへ返信されるか理解できていないのですが、取り敢えず返信してみました ・4.Yahoo!メ-ルより普通に返信できました ・「MAILER-DAEMON@yahoo.co.jp」から件名「failure delivery」が届くかと思いきや届きませんでした ・`$ sudo less /var/spool/mail/nginx` を打ちましたが、該当メールは受信されていませんでした ・どこへ返信されたかも分からないし、受信も出来ていないし、送信エラーにもなっていない理由が良く分かりません 5.Yahoo!メ-ルで返信した際の送信済メールの詳細ヘッダを見たら ・`To: a `となっていました ・WHOIS検索で9aade.comを検索したら、「データが取得できませんでした。」と表示されました ※9aade.comは存在しないドメインを指定すれば、返信不可になるかな、と思い適当に指定しました
回答: > > 「このメールに返信はできません」と書くだけではなく、実際に返信不可なメールを簡単に設定する方法はないですか? > > 例えば、example.comのような、誰でもfromで指定できる(かつ返信不可な)「送信専用のメールアドレス」みたいなものはないですか? > > ・意図的にメール送信エラーを発生させるにはどうすれば良いですか? > > ・メールを一旦受け取って、403エラーみたいなレスポンスを返さなければいけない > > > 存在しないメールアドレスを設定することが多いです。ただしドメイン(@より後ろ)は存在するもの,アカウント部分は(@より前)は存在しないというふうにしたほうが良いです。(後述します) > > fromを適当に設定したmail.xxxx.comが送信エラーにならないのはなぜですか? > > > まだエラーメールが届いていないということなので推測ですが、 一般的には、存在しないドメインに送ると一時的なエラーとして送信側のメールサーバでリトライを繰り返します。 ドメインは存在するもののアカウントが存在しないとメールサーバ側がユーザが存在しませんというエラーメッセージを返してくるので恒久的なエラーとしてそのタイミングでエラーメッセージを返してくれます。 そのため今回はまだリトライを繰り返しており、まだエラーメールが届いていないと思われます。 参考 ドメイン部分は存在するものにしておかないと、メール自体はリトライを実行されて遅れてエラーメッセージが飛んでくると思います。(ご利用のメールサーバやメールサービスの仕様によりますが、) そのため送信専用のメールを作るときには、ドメインは存在するもののアカウントが存在しないメールで行うことが多いです。そうしないとエラーメールがすぐ帰ってこないし、相手方にメールキューが貯まる原因にもなります。 > > 送信エラー判断は、メーラーによって異なる?? > > > 送信エラーの判断内容は一緒でメールが送信できなければエラーです。 ただし、送信エラーの中で一時的なエラーに関しては判断のタイミングはメールサービスやメールサーバによって違います。 一週間リトライすることもあれば24時間しかリトライしないこともあります。 Yahoo!メールの仕様を検索してみましたが、とくに資料は見つかりませんでしたがしばらくすればエラーが帰ってくるかと思います。