0

私が現在取り組んでいるプロジェクトでは、ユーザーが username@sub.domain.com に電子メールを送信できるようにしたいと考えています。これらの電子メール、またはより具体的には、sub.domain.com に送信されるすべての電子メールは、PHP スクリプトによって処理されます。

そのスクリプトでは、ユーザー名 (@ の前の部分) と電子メールのヘッダーと本文を取得できる必要があります。

  1. すべてのユーザーに事前に電子メール エイリアスを設定しなくても、それを行うことは可能ですか?

  2. 電子メールの到着時にスクリプトを実行する方法はありますか? または、定期的に確認するために cron ジョブを実行する必要がありますか? Web からスクリプトにアクセスできるかどうかは気にしません。

  3. これまで読んだことから、そのためには IMAP または POP3 のいずれかを使用する必要があると思いますが、それは正しいですか? 私はどちらも経験がありません。このユースケースにはどちらが適していますか?

  4. これを行う際に留意すべきことは他にありますか?サーバーを完全に制御でき、必要なものを変更およびインストールできると仮定します。

前もって感謝します :)

編集: @Dagon は、#3 の代わりに電子メールをスクリプトにパイプすることについて言及しました。どのように?私はこれまでにこのようなことをしたことがありません。

Edit2: 私がしたいのは、すべての受信メールに PHP スクリプトをフックすることだけです。それは広すぎますか?

4

1 に答える 1

1
  1. @sub.domain.com を 1 つのメールボックスにエイリアスできるはずです。メールの From: ヘッダーにはユーザー名が含まれます。

  2. スクリプトを実行し続けるか、cron ジョブでスクリプトを実行する必要があります。電子メールが届いても、不要な複雑さを加えずにスクリプトを実行することはできませんでした。

  3. IMAP を使用する方が良いと私は思います。文字通り、IMAP 用の既存の PHP ライブラリが POP 用のライブラリよりも優れているからです。一般的に、POP は劣ったプロトコルです。

  4. ユーザー名にリンクされたランダムな文字列など、電子メール アドレスにユーザー名以外のものを使用したい場合があります。そうしないと、誰かのユーザー名を知っていれば、その人になりすまして PHP スクリプトを実行することができます。

于 2015-06-10T11:17:21.567 に答える