Re:リターンパスの設定について


このメッセージの投稿者: ベルコールさん 2001/09/19 11:37:40

元メッセージ: リターンパスの設定について 投稿者: ホリさん 2001/09/18 14:11:28

>お世話になります。
>i-post(ver 2.10.014)を使用していますhoriです。
>実は、レンタルサーバーから、cgiにリターンパスを設定して欲しいとの連絡が入りました。
>(メールがサーバー側に戻ってしまうので)
>i-post.cgi本体の、262行目付近の$from=$adminaddr;の前に
>Return-Path: $from;と入れてみましたがうまくいきません。
>アドバイスお願いします。

>ps 他のメーラー関連のcgiは修正済みました。もしかしてi-postは修正せずとも
>  自分(web master)指定のアドレスにメールは戻るのでしょうか。
>
-----
メール送信に設定してあるのは SMTPサーバーですか、sendmailですか。
SMTPサーバーが設定してあるなら、Return-Pathは管理者アドレスになるはずです。
sendmailをお使いの場合は、・・・
Return-Pathを設定するということはできません。
詳しいことはご自分で調べていただくとして、カンタンに説明すると、
電子メールを郵便ハガキにたとえると、
ハガキの裏面(本文)だけ書いて出します。To,Cc,Bcc(受取人)や From(差出人)は実はハガキの表面に書いているのではなく、付箋に書いて付けていることになります。
これを受け取ったMTA(Mail Transfer Agent = sendmailなど)はハガキの表面に「本当の受取人と差出人」を書き込んで、あて先の付箋を付けて SMTPサーバーに渡します。
こういう仕組みだから、To:のほか、Cc: Bcc:でコピーが送られますし、From:にウソのアドレスを書いて送る不埒者もいます。
ここで問題です。
Return-Path というのは「本当の差出人」が設定されるのです。
で、たいていのサーバーは nobody権限でCGIプログラムが実行されていますから、「本当の送信者」は "名無しの権兵衛"さんということになります。
で、あて先が存在しなかった場合などのエラーレポートは、サーバーの設定によりますがサーバー管理者のアドレスに届くことになります。
そこで、「レンタルサーバーから、cgiプログラムにリターンパスを設定して欲しいとのこと」ですが、sendmail の「-f」オプションが使えるのであれば、これでアドレスを指定するとエラーレポートはこのアドレスに送られます。
「リターンパスを設定」というのは「-f オプションが使えるからこれを設定して欲しい」ということかも知れません。ならば、smtp.plの中の
 open(SENDMAIL,"|$smtpserver -t") に
次のように、-f オプションを付けてください。
 open(SENDMAIL,"|$smtpserver -t -f $fromaddr")


このメッセージへの返事:

210.161.226.114/bellcall.co.jp