xpwikiのページを編集するとレポートメールが届くように設定してあるんだが・・・ 届いてないのに気が付いた。
日本語のページのレポートメールが amavisd-newによってブロックされていた。
エラーレポートメールの件名は Undeliverable mail, invalid header section
レポートの内容を抜粋すると
[code]
INVALID HEADER
Improper use of control character (char 0D hex): Subject:
…VkhPCVIJWElQyU7ITwbKEI=?=\r\n =?ISO-2022-JP[…]
途中略
X-Mailer: PHPMailer 5.2.1
(http://code.google.com/a/apache-extras.org/p/phpmailer/)
Subject: [xpwiki] =?ISO-2022-JP?B?GyRCJVclaSUkJVkhPCVIJWElQyU7ITwbKEI=?=\015
=?ISO-2022-JP?B?GyRCJTgkLCR[…]
[/code]
Subject(件名)のリターンコードに 0Dを使っているのが良くないらしい。
xpwikiのメールを送るルーチンを追っかけて追っかけて・・
xoopsHome/language/ja_utf8/xoopsmailerlocal.phpの140行を以下のように修正した。
[code]
$eol = $this->Mailer==’mail’?"\n":"\n"; // XXX: this for bugs in PHP mail() subject with linefeed handling
[/code]
ただし これが正解かどうかは よく分からない。 だいたい この行の存在意味が無くなってるしぃ~~
14/06/19 追記
この改造は 今は施さなくても 簡単にメールのタイトルのリターンコードを設定できるようになった。
詳しくは この記事を見て欲しい。