問題 §
PukiWiki 1.5.3で電子メールを送信できない。
PukiWiki以外ならPHPそのものは正常に電子メールを送信できる。
原因 §
lib/maiul.phpの以下の箇所にバグがある。
具体的には、$notify_headerが空の時、From:の行の行末に改行(\r\n)が付加されずに処理が進行し、SMTPサーバがエラー(Windows ServerのSMTPサーバならMAIL - 501)を出す。
$_headers =
'X-Mailer: PukiWiki/' . S_VERSION .
' PHP/' . phpversion() . "\r\n" .
'From: ' . $notify_from;
// Additional header(s) by admin
if ($notify_header != '') $_headers .= "\r\n" . $notify_header;
解決 §
pukiwiki.ini.phpの$notify_headerに以下のように改行コードを入れておく。
$notify_header = '\r\n';