UNIXのsendmailを利用できないWindows2000などのローカルサーバで、簡単にメール送信のテストを行う方法です。この方法でKCBBSが送信するメールの内容(ヘッダや文字コード等)がおかしくないか確認してたのですが、もっといい方法があるのかも知れません。ちなみにテスト環境は、Windows2000、AN HTTPD v1.42m、PHP v4.3.11、KCBBS v1.00(公開してないけど(^^;)、です。
MELON は seclan さん作成の『メールサーバに直送する暗号化通信 (TLS/SSL)/IPv6/EDNS0/SRV対応 Windows 用 SMTPサーバ および SMTP/POP3 Proxyサーバ』です。MELON の説明とダウンロードは、seclan さんのサイトでどうぞ。ソフトの説明の左上にある「開く(O) 」が Vector のダウンロードページにリンクされています。配布ファイルをダウンロードしたら適当なフォルダに解凍します。同梱の説明書(README.TXT)は必ず読むようにしましょう。
php.ini の、”SMTP”と”smtp_port”を下記のように設定します。
[mail function] ; For Win32 only. SMTP = 127.0.0.1 smtp_port = 25
melon.ini(MELONの設定ファイル)の設定も php.ini と同じにします。
[ssmtpd] ListenIP=127.0.0.1 ListenPort=25
サーバやポートは通常はこの設定になっていると思いますが、変更していた場合は両方とも同じ設定にします。
ローカルサーバで MELON を起動後、スクリプトを実行してメールを送信してみましょう。メールは MELON に送られて、しばらくするとそのメールの宛先へ配送されます(スクリプトの送信先アドレスの設定はもちろん自分のアドレスにします)。あとは、いつも通り自分の使用しているメーラーでメールを確認するだけです。送信されなかった場合は、PHPのエラーメッセージや MELON のエラーログを見れば原因が分かるでしょう。