先日、さくらインターネットのライトコースを契約しているお客さんのWEBサイトをつくったのですが、ライトコースってメールの自動応答機能が使えないんです。(上位コースでは使えます。)
こんなメジャーなレンタルサーバでいまどき自動応答も付いてないコースがあるんですね。完全にノーマーク。
Googleさんのお力を借りて調べた結果、自己責任&トラブル発生時のサービス対象外となるけども、ある方法で実現できることが判明。
さくらインターネットでは、「maildrop」というメールプログラムを使ってる(らしい)。
FTPでアクセスできる範囲に、この設定ファイルがあります。
- FTPに接続し、WEBサイトデータを置く「www」フォルダと同じ階層にある「MailBox」へ。
- その中にアカウント毎にフォルダが用意されているので、自動応答用のアカウント名のフォルダへ。
- その中の「.mailfilter」というファイルをテキストエディタで開き、次のような一行を追加。
cc “| mailbot -t /home/(username)/MailBox/(account)/reply -A ‘From: (info@xxxxxx.com)’ /usr/sbin/sendmail -t”
※(username)はさくらインターネットのユーザ名
※(account)は自動応答対象となるメールアドレスの@より前の部分
※(info@xxxxxx.com)はメールヘッダに記載される返信先アドレス(任意)ただし環境によっては上記のままでは足りないようで・・・。紆余曲折を経て実際にボクが加えた一行は次の通り。
cc “| mailbot -t /home/(username)/MailBox/(account)/reply -A -c UTF-8 -s ‘From: (info@xxxxxx.com)’ /usr/sbin/sendmail -t”
※「.mailfilterはEUCで保存」(サーバのシステムがEUCだかららしい)という指示があったけど、ボクはうまくいかなかったので、UTF-8で保存しちゃいました。
- 上記の設定を終えたら.mailfiterと同じ階層に「reply」というファイルを作成し、そこに応答メールの本文を記載します。参考にした複数のページで「replyファイルをシフトJISで保存」と言っているんですが、ボクの場合それでは文字化けが直らず、最終的には「UTF-8」で保存して、(4)で追加する文章にも文字エンコードを指定(-c UTF-8 の部分)したら解決しました。(今、何気なく思ったのだが・・・そもそもシフトJISではなくISO-2022-JPじゃないのだろうか・・・。)
ここでのハマりポイントは、文字エンコードの指定。
.mailfiterはEUCで保存、replyはシフトJIS(ISO-2022-JP?)で保存とか、もうなんで統一されていないの~。
指定通りに設定しても必ずどこかが文字化けする始末。あちら直せばこちら文字化け。もう発狂しそう。
2日間悩んだのち、「なんで文字エンコードを統一しちゃダメなのさっ!」と、思い切ってすべてをUTF-8に変更したら・・・
あっさり解決しました。
その後何もトラブルが発生していません。
これでいいのかな・・・。ちょっと不安が残るのは否めないけど、よしとしよう。
チェック環境は以下の通り。
- WindowsXP + Thunderbird
- Windows7 + Liveメール
- Windows7 + Outlook
- Gmail
ということで、ボクのオリジナル設定は、
- .mailfilerはUTF-8で保存
- replyもUTF-8で保存
- maildropのコマンド(?)にはオプションでUTF-8を指定(-c UTF8)
以上。
とても勉強になりました。
まったくわからなかったメールサーバの世界をちょっとだけ垣間見ました。