2009年09月30日
川俣晶の縁側ソフトウェア技術雑記 total 5238 count

PukiWikiの2ちゃんねる型掲示板プラグインでメール通知が機能しない問題

Written By: 川俣 晶連絡先

 以下、メモのみ。

 掲示板プラグイン のbbs_plugin_061216.zipはそのままでは電子メールによる通知機能が動作しなかった。

対策手順 §

  1. PukiWiki本体をメール通知可能に設定する
  2. conf.inc.phpの'NOTIFY'の行を次のように直す。define( 'NOTIFY', '1' );
  3. bbs.inc.phpのfunction postにglobal $notify_from;を追加する
  4. bbs.inc.phpのmb_send_mailが書かれた行を以下のリストに差し替える

差し替えリスト §

$_headers =

 'X-Mailer: PukiWiki/' . S_VERSION .

 ' PHP/' . phpversion() . "\r\n" .

 'From: ' . $notify_from;

mb_send_mail($notify_to, $subject, $str, $_headers);

補足説明 §

 とりあえず動くようにしただけなので、直し方は適当である。眉に唾を付けて使うように。他にも修正を入れているが、そちらも関係している可能性もある。

問題の原因 §

 元ソースでは$notify_fromを使用しておらず、ヘッダーに$notify_headerを使用しているが、普通に設定して使うとFrom無しでメールを送信しようとする。これをSMTPサーバが受け付けない場合がある。PukiWiki本体と同等のヘッダーを付ければ、少なくともPukiWiki本体のメールを受け付けるサーバなら送信できるようだ。