PHPで与えられたサーバー情報とユーザー情報でSMTPサーバーにログインできるかどうか、メールを送信せずに判別する方法を教えて下さい。


■Pear::Mailを利用した方法だと有難いです
(他の方法でもOK)
■SSLを利用する方法も教えて頂けると有難いです

回答の条件
  • 1人2回まで
  • 登録:2007/08/31 18:38:04
  • 終了:2007/09/07 18:40:03

回答(3件)

id:Yota No.1

Yota回答回数453ベストアンサー獲得回数282007/08/31 18:51:23

ポイント27pt

http://www.e-postinc.jp/epmsent_construct_guide/12.html

コマンドプロンプトでtelnetコマンドを使って接続確認できます。

id:tomoyuki28jp

ご回答ありがとうございます。

phpで実現する方法を探しております。

2007/08/31 19:09:12
id:KUROX No.2

KUROX回答回数3542ベストアンサー獲得回数1402007/08/31 19:14:47

ポイント27pt

http://www.codewalkers.com/c/a/Email-Code/Smtp-Auth-Email-Script...

直接ソケットOPENして処理してますけど、処理は希望通りかと。

id:tomoyuki28jp

毎度ご回答ありがとうございます。

このURL見たのですが、やはりこのように

泥臭い方法でやるしかないんですかねぇ。。

もう少しスマートなやり方があれば嬉しいのですが。

2007/08/31 20:09:56
id:kuro0680 No.3

kuro0680回答回数20ベストアンサー獲得回数02007/08/31 23:27:31

ポイント26pt

KUROXさんのご回答に「泥臭い方法」とお返事されているようですが、お言葉ですがKUROXさんがご回答なされたURLのソースを見る限り、あくまでSMTP通信プロトコルの正常な通信をしようとしているだけで、まったく泥臭い方法とは思いません。

 また、SMTPサーバにログインというのは、SMTP AUTH(もしくはPOP Before SMTP?)による認証に合格するかどうかを確認したいということでしょうか。

 それならば、「MAIL FROM」のコマンドを発行しない、もしくは「DATA」コマンドを発行した後ソケットを切断すればメールを送信せずにすみますが、もちろんAUTHしたログはSMTPサーバに残ると思われます。

 ログは残っても確認したいということであればその方法でよいかと思いますがいかがでしょうか。

  • id:KUROX
    http://www.go-pear.org/manual/ja/html/package.networking.net-smtp.html

    Net_SMTPとか使えそうに見えますが・・。
  • id:KUROX
    >「泥臭い方法」
    私も泥臭いと思います。
    表現としてはソケットを直接OPENしてるとかいてますが
    同じ心境です。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません