奥村です。
> > /dev/null へメールを送ると、sendmail 自体は正常終了するように
> > 思えます。
> > それですと、cgi でエラーを検出できないので。。。。
>
> エラーはどうやって検出しているのでしょうか?
>
perl にて以下のようにしています。
open( OUT, "$sendmail -t" );
メール作成処理;
close(OUT);
if( $? )
{
エラー処理;
}
$? はperlの特殊変数で「system(), パイプクローズなどの終了
ステータスコード。」らしいです。今回初めて使います。
>
> > 試しにaliasesファイルを変更してみたところ、rootへエラーメールの
> > 送信を行ってしまいました。
> > どうやら、/etc/aliases.db ファイルをチェックしているようです。
> > ( alias database /etc/aliases.db out of date メッセージが
> > maillog に出力されるようになりました。。。)
>
> aliasesファイルを変更した後にはnewaliasesコマンドを実行する必要がありま
す。
>
ありがとうございます。お恥かしいかぎりです。
>
> > エラーが発生しても、エラーメール自体を全く送信しない設定が
> > あればと思いました。
>
> ですから何故そういう事が必要なのでしょうか。
> # 上記のエラー検出方法との兼ね合いの問題かと思いますが...
ブラウザから登録されたメールアドレスは全てDBに登録しています。
送信エラーが発生したデータはDBに登録しないようにしたいというのが
そもそもの発端です。
そして上記の
if( $? )
{
エラー処理;
}
を入れたのですが、「正常終了」としてエラー処理を実行しません。
理由を調べた所、maillog の最後が root にメールを送っている為
stat=Sent となっている為「正常終了」なのかもしれない推測しました。
それでrootへのエラーメール送信自体を行わなければ
その前のエラーを検出してDB登録を行わないようにできるのでは
と考えたからです。
また、今回たまたまrootのメールボックスを見たところ、
かなりエラーメールがたまっていました。
このままですと、定期的にrootのメールを削除しなければならず
不都合が生じると思い対応しています。
私の根本的な考え違いな所もあるかも知れません。
お気づきの点がございましたら、ご指摘頂ければ幸いです。
よろしくお願いします。
Follow-Ups: References:
- [vine-users:061033] Re: sendmailでエラー時にroot へ転送させない方法Yamada Kazuo
- [vine-users:061034] Re: sendmail でエラー時にroot へ転送させない方法Voice
- [vine-users:061035] Re: sendmailでエラー時にroot へ転送させない方法Yamada Kazuo
- Prev by Subject: [vine-users:061037] Re: sendmailでエラー時にroot へ転送させない方法
- Next by Subject: [vine-users:061039] Re: sendmail でエラー時にroot へ転送させない方法
- Previous by thread: [vine-users:061035] Re: sendmailでエラー時にroot へ転送させない方法
- Next by thread: [vine-users:061040] Re: sendmailでエラー時にroot へ転送させない方法
- Indexes:[Main][Thread]