この記事は公開から12年、最終更新日からも7年経過しています。内容が古くなっている可能性があります。
なんだか社内SEみたいな仕事しているようですが、いちおう、社内SEです。
こういう技術情報を自分のブログに投稿しておくことで、自分用のメモとしても使用できますし、
あわよくば、誰かのお役に立てれば良いなあ、ということで。
——
さて、会社でメーリングリストを運用しているのですが(さくらサーバー)、
外部からメーリングリスト宛に届いたメールに返信すると、宛先がメーリングリストのみになってしまうという事で、
それに気づかないと、きちんと返信したつもりが実は社内にしか送られていないという。。。
キーワードは、 reply-to というもので、実はメール送信する際に、 reply-to にアドレスを入力しておくと、
その受信者が返信した際には、reply-to に設定されたアドレスが宛先のデフォルトになるというからくり。
※もちろん、送信アドレスとは別のアドレスを設定しておく事もできます。
で、さくらのメーリングリストでは、そのメーリングリスト自身がreply-toに初期値として設定されるようです。
http://support.sakura.ad.jp/manual/rs/mail/ml_notice.html#ac02
※さくらのヘルプには記載がありませんが、送信者がreply-toを設定しているメールに対しては、(おそらく)そちらが優先されるようです。
というわけで、reply-toが設定されていない場合に、送信者のメールアドレスをreply-toに設定する方法を調べて実際にうまくいきましたのでメモっておきます。
※残念ながら、さくらのコントロールパネルでは、reply-toの設定を行えません。
☆さくらの環境;
メーリングリストはfmlというソフトを使用しています。
fmlについて(wiki)
ユーザー名を ○○○ メーリングリスト名を △△△ とします。
(1)ftpクライアント等で、メーリングリストの設定ファイルのある場所にアクセスします。
/home/○○○/fml/spool/ml/△△△
(2)その中にある、 cf というファイルの
# YOU CAN EDIT MANUALLY AFTER HERE.
の下の場所などに、下記設定を追加編集します。
$START_HOOK =q#
if (&GET_HEADER_FIELD_VALUE(‘reply-to’)) {
&DEFINE_FIELD_FORCED(“reply-to”, &GET_HEADER_FIELD_VALUE(‘reply-to’));
}
else {
&DEFINE_FIELD_FORCED(“reply-to”, $From_address);
}
#;
※最初のif・・・reply-toが設定されていたら、その設定を上書きします。(もしかしたら、必要ないかもしれません)
※else・・・reply-toが設定されていない場合は、送信者のアドレス($from_address)をreply-toに書き込みます。
(3)(2)で編集したファイルを再度(1)の場所にアップロードします。
(4)SSHクライアント(Tera Term等)でサーバーにログインし、(3)の場所に移動します。
(5)(4)の場所で、次のコマンドを実行します。
%make config.ph
%
(6)エラーが出ないこと、及び、同じ階層にあるconfig.phというファイルが更新された事を確認します。
※config.phを直接編集しても良いらしいのですが、初心者なんで怖いですね。
※cfというファイルを変更しただけでは、実際の環境は変更されません。
※config.phを書き換える事で実際の環境が変更されるようです。
※make config.ph は cf というファイルから config.ph を更新するコマンドのようです。
(7)動作確認を行います。
reply-toを設定して送信した場合(送信アドレスとは別のアドレスを設定)と、設定なしで送信した場合の両方を確認しておきます。
(8)お疲れ様でした☆☆☆
しかし、perlは書いたことない筆者です。危険だなあ。
それと、久しぶりにUNIX系のコマンドたたきました。cd、pwd、lsとか。基本コマンドぐらいは意外と覚えているもんです。
はい。下記サイトなどを参考にさせて頂きました(というかそっくりそのままですが)。有難うございました。
・fmlの設定ファイルについての説明
http://www.fml.org/fml/INSTALL/9.html
・reply-to設定方法
http://d.hatena.ne.jp/y_fudi/20091108/1257611240