ローカルサーバ(Windows)でメール送信テスト

UNIXのsendmailを利用できないWindows2000などのローカルサーバで、簡単にメール送信のテストを行う方法です。この方法でKCBBSが送信するメールの内容(ヘッダや文字コード等)がおかしくないか確認してたのですが、もっといい方法があるのかも知れません。ちなみにテスト環境は、Windows2000、AN HTTPD v1.42m、PHP v4.3.11、KCBBS v1.00(公開してないけど(^^;)、です。

sendmail の代りに Windows用SMTP サーバの MELON を使用します

MELON は seclan さん作成の『メールサーバに直送する暗号化通信 (TLS/SSL)/IPv6/EDNS0/SRV対応 Windows 用 SMTPサーバ および SMTP/POP3 Proxyサーバ』です。MELON の説明とダウンロードは、seclan さんのサイトでどうぞ。ソフトの説明の左上にある「開く(O) 」が Vector のダウンロードページにリンクされています。配布ファイルをダウンロードしたら適当なフォルダに解凍します。同梱の説明書(README.TXT)は必ず読むようにしましょう。

php.ini と melon.ini を編集します

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 のエラーログを見れば原因が分かるでしょう。

Copyright (c) 2003-2006 Teal All Rights Reserved.