• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:POP before SMTPはどうやって?)

POP before SMTPの実装方法

このQ&Aのポイント
  • POP before SMTPを実装する方法について詳しく説明します。
  • SMTPを使用してメールを送信する際に、プロバイダがPOP認証を要求する場合の対処方法を解説します。
  • fsockopen関数を使用してPOPにアクセスし、ユーザー名とパスワードを入力して接続した後、SMTPでメールを送信します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

POP before SMTPはつまり、SMTPがPOPのログイン状態を調べて過去一定時間内にログインがあればリレーを許可するというものですから、POPを切断してからでも転送はできます。どちらにせよ、理屈ではこんな感じでいいと思います。 ただ、プロバイダのSMTPとは何ですか?mail関数はあくまでそのスクリプトが動いている場所のMTAを起動する関数です。このサーバーのMTAがPOP beroreSMTPの制限を掛けているのでしょうか?そうだとしても、通常はローカルからのメール送信の場合はリレーを許可している事が多いと思うので、このような処理は不要のような気がするのですが。

q123
質問者

補足

YahooのSMTPサーバーを使用しています。 Outlook Expressからはうまく遅れたので多分POP before SMTP とは一度POPアクセスしてからSMTPアクセスすればいいのだなとは思っていました。コンセプトはあっているみたいですね。ただ問題は一度fsockopenでPOPにアクセスしに行ってそのままつながったままになってしまっていてmailまで行かないところです。 ご回答ありがとうございました。

その他の回答 (1)

回答No.2

やはり勘違いをされていると思いますよ。POP before SMTPはいらないんじゃないでしょうか。このスクリプト自体はどこで動いているんですか?mail関数はそのスクリプトがあるマシンのMTAを起動するだけです。ここではYAHOO云々は関係ありません。そのスクリプトがあるマシンのMTAが各配信先にメールを送ってくれるはずです。mail関数だけで送れるはずなのですが・・・。