• 締切済み

リアルタイムでプログラムを起動

教えて下さい。 (1)PHPでPOPサーバに接続し、受信メールのヘッダよりアドレスを取得するプログラムを作ります。 (2)POPサーバがメールを受信する毎(もしくは定期的に)に、(1)のプログラムを起動させてアドレスを取得します。 (※この時点で考えが間違っていましたらご指摘お願いします。) 上記(2)の、メールを受信する毎にプログラムを起動させるにはApache等の設定が必要になってくると思うのですが、設定や参考サイト等のご教授を頂けませんでしょうか。 又、以前、上記(1)でPOPサーバ(レンタルサーバです)に接続する際に「PEAR::Net_POP3」を使用するというご指摘を頂きました。「PEAR::Net_POP3」を使用するには別途追加のインストールが必要だと思うのですが、詳細の設定等のご教授を頂けませんでしょうか。 又、「PEAR::Net_POP3」に関するサイト(同じ内容のサイトしか見つけられませんでした)等教えて頂けませんでしょうか。 大変お手数をお掛け致しますが、よろしくお願い致します。

  • begst
  • お礼率57% (11/19)
  • PHP
  • 回答数5
  • ありがとう数1

みんなの回答

回答No.5

リアルタイム受信はメールサーバ(MTA)にプログラミングする必要があります。あなたがメールサーバを運用していなければそれは無理でしょう。 準リアルタイム、すなわち定期的にプログラムを実行させたいばあいは、UNIX系ではいわゆるcronで対応しますね。 Windowsではいくつかアプリケーションがあると思います。 http://www.atmarkit.co.jp/fwin2k/win2ktips/335tasksched/tasksched.html ほぼcronというものもあるようです http://www.rouge.gr.jp/~fuku/tips/win2k-cron/ 通常、1分おきにチェックするようにすれば準リアルタイムと言う感じじゃないでしょうか。 Windowsのcronについては過去ログも参考に http://oshiete1.goo.ne.jp/kotaeru.php3?q=1817190 尚、cron への登録法はいくつかあります。例えばwgetをインストールすれば、WEBクライアントとして処理出来るかと思います。たとえば次のような感じで。 wget http://localhost/pop.php URLを叩きさえすれば良いので、方法はいくつか考えられると思います。

  • maura
  • ベストアンサー率46% (48/104)
回答No.4

"メールを受信する毎にプログラムを起動させる" というのだけなら何とか知っていることがあります。 メーリングリスト等に使用されているFML。 http://www.fml.org/ また、Webブラウザでやるとすれば http://www.scriptbrowserk.com/ スケジュール機能。指定した日時や定期的にホームページを自動的に表示したり、スクリプトを実行したりできます。 だったらタスクスケジューラは?という声が聞こえてきそうですが。 POPサーバがメールを受信する毎という表現だと メールサーバーの設定でやるとか。 そうなると、Plagger でも出来るそう なんか色々 方法がありますね Googleで「はらへった」と検索するとピザが届くようにするまで http://e8y.net/blog/2006/07/25/p126.html どれも的外れでしたらすいません

noname#26650
noname#26650
回答No.3

PEAR(PHP Extension and Application Repository)は PHPの機能を拡張するためのライブラリ群で、 自分が開発したいアプリケーションに必要なライブラリを その都度インストールするようになっています。 今回のアプリケーションではNet_POP3が必要とのことですので、 go-pear.batを使ってパッケージマネージャーをインストール (PEARのライブラリ群をインストールする前に、一回だけ必要)してから、 pear install Net_POP3 を実行してNet_POP3をインストールすることになります。

回答No.2

popはあくまでもpopであり、apacheはwebサーバです。 関係する意味がよく分りませんが・・・ また、pop側で受信する毎にということは、pop側で、phpプログラムをフックするようにしないといけないと思います。 逆だと、定期的にphpを回して、popにアクセスするということでしょうが、これだとしたいことになりませんよね?

noname#26650
noname#26650
回答No.1

ネット上に日本語のドキュメントが転がっています。 「PEAR Net_POP3 インストール」あたりでググってみてください。 参考URL(PEAR本家、日本語文書へのリンクあり)からもたどっていけます。

参考URL:
http://pear.php.net/
begst
質問者

お礼

早速のご返答ありがとうございます。 記載をし損ねてしまいましたが、Windowsで開発しております。 「http://www.phppro.jp/phptips/archives/vol19/」にて、インストールは「pear install Net_POP3」と記載されていたのですが、理解しかねます。 素人で申し訳ございませんが、ご教授お願い致します。

関連するQ&A

  • /etc/aliasesを使ってPerlプログラムを起動

    初めまして、wantedと申します。 以下のご回答宜しくお願い致します。 メールサーバにSendMailを使っており、/etc/aliasesを使ってPerlプログラムを起動するようにしています。 このプログラムで、受信したメールに添付してあるcsv形式のファイルの内容を解析したいのですが、添付したファイルの内容を取得するには、どうしたらいいのでしょうか?

  • XPSでのメールアカウント

    私XPS1210を購入したのですが、再起動するたびにメールアカウントの受信サーバー設定が変わってしまいます。 OutLook Express 6.0を使っています。 プロバイダは朝日ネットなのですが、pop.asahi-net.or.jp と設定したものが再起動のたびに、"127.0.0.1”と変わっています。 それで、毎回設定しなおさないとサーバーにログインできません。 今までこんなことなかったのでわけわかりません。 どなたかご教授願いたし。よろしくお願いします。

  • PEARのNet_POP3を使用したメール受信

    PHP初心者です。 ちょっと疑問に思っておりまして、ご存じの方がおられましたらぜひお教えいただきたくお願いします。 PHPのPearのNet_Pop3を使用して、メール受信をしています。 メール受信時はメールを削除しないようにしています。 それで、Outlook Expressのように、「サーバーにコピーを置く」 というオプションと同じ動作をさせたいと思っています。 Outlook Expressでは一度受信したものは二度と受信しないように なっていますが、このような動作をNet_Pop3を使って 行うには、どのようにしたらいいでしょうか? よろしくお願いしますm(_ _)m

    • ベストアンサー
    • PHP
  • メールの再送方法について

    契約しているプロバイダのメールサーバー上のメールを 再度 Thunderbird で受信したいのですがうまくいきません。 ネットで色々調べて・・・ popstate.dat を削除して Thunderbird を再起動してもサーバーにある メールを受信しません。 Thunderbird ・バージョンは最新 ・サーバー受信設定は POP メールサーバー ・T-Com の Webmail ・POP 接続での受信 ・サーバー上にメールを一定期間残す設定になっております。 どのようにすれば再度メールを Thunderbird で受信出来るでしょうか? どなたかご教示お願い致します。

  • gooのフリーメールでPOPメールの

    gooのフリーメールを取得してますが、もう一つアドレスを持ってるので 統一しようと思います。 新しいアドレスで古いアドレスをPOPメール受信したんですが、 アカウント名、POPサーバは何を入れればいいんんでしょうか? 全く初歩的な質問ですみません!

  • MacのMail。ライブドアのアカウント設定がうまくいきません

    自宅ではMac OSX(10.3.3)で、Mailの1.3.7を使っています。 このソフトには、私の利用プロバイダであるniftyのアドレス、勤務先ドメインのアドレス、yahooのフリーメールのアドレスのアカウントを設定して使い分けています。 ヤフーでもう一つアドレスを取得して設定しようとしたら、うまくいかないので、同一ドメインの複数のアドレスは設定できないのかと思って、ライブドアのフリーメールアドレスを取得しました。 http://isp.livedoor.com/onlinehelp/guide/mail/macosx_mail.html#3 を見ながら設定してみたのですが、どうしても送受信できません。 なお、上記HPの説明に出ている画面の絵と、私の画面には「受信用メールサーバ」という欄がありますが、livedoorから来た登録確認メールにはその項目がなく、代わりに「POP3サーバ」が書かれていたので、それを「受信用メールサーバ」の欄に入力しました。 初心者で、どこがいけないのか見当がつきません。 宜しくお願い致します。

    • ベストアンサー
    • Mac
  • Yahooフリーメルアドの利用設定について教えて下さい。

    この度、Yahooのフリーメールアドレスを取得したのですが、既存のメールアドレスのアカウント設定(受信メールPOP3)や(送信メール SMTP)などは、そのままで良いのでしょうか? そのままで設定をして、試しに自分の携帯にメール送信してみたら、 「電子メールの送信サーバー(SMTP)の認証設定が間違っている可能性があります・・・。」というエラーメッセージが出ました。 フリーメールアドレスの設定方法についてご教授頂けませんでしょうか。何卒、よろしくお願い申し上げます。

  • おちゃのこネットショップで独自ドメインを取得しました。そして、独自ドメ

    おちゃのこネットショップで独自ドメインを取得しました。そして、独自ドメインのメールアドレスを作りました。メールソフトは無料のThunderbirdをダウンロードしました。 Thunderbirdで独自ドメインのメールアドレスを受信したいのですがどこから設定を変更したらいいのでしょうか? おちゃのこネットショップからは受信メールサーバー、送信メールサーバ、アカウント名、パスワード、メールアドレス等の入力をメールソフトにするように指示しています。 受信メールサーバー、送信メールサーバ、アカウント名、パスワード、メールアドレス等の入力をThunderbirdに入力したいのですがどこから設定変更をするのかを教えてください。 ご教授おねがいします。

  • ポスペとso-netとアネット

    メールソフトにアウトルック5.02とポスペ2001を使っています。 プロバイダーはso-netでポスペ用にフリーメールアネットのアドレスを取得しました。 アネットでは契約プロバイダ(私の場合はso-net)のPOPとやらを使っている為か、 アウトルックではso-netアドレスのメール、 ポスペではアネットアドレスのメールを受信したいのに、 どちらのソフトを先にメールチェックしてもアドレスに関係なく全部受信してしまいます。 以前こちらのサイトで質問されている方のを拝見しました所、 アウトルックにはルールにて『(メールアドレス)をサーバーから受信しない』 という設定ができるようなのですが、 私が使っている5.02には見あたりません。 このままではポストペットのペットがかわいそうです。 他のフリーメールの方がいいのでしょうか? どなたかわかる方いらっしゃいましたら教えてください。 よろしくお願いいたします。

  • メール受信時にパイプしてPerlプログラム起動したい(FreeBSD sendmail)

    FreeBSDのサーバで、メールを受信した際にその内容をパイプして、標準入力でPerlプログラムにパイプさせてWebサイトに反映させるという処理をしたいと思っております。 ただ、Perl以前の問題でつまずいています。 メール受信時に、/etc/mail/alias を編集し、 アカウント "| /path/proguram.pl" と設定しました。同様の設定でメールの転送はできているので、書式は間違っていないかと思います。 このプログラムを指定したとき、このメールアドレスにメールを送信すると、以下のエラーが出ます。 ----- The following addresses had permanent fatal errors ----- "| /home/****/www/cgi-bin/test.pl" (reason: 126) (expanded from: <****@**.**>) ----- Transcript of session follows ----- /home/****/www/cgi-bin/test.pl: Permission denied 554 5.3.0 unknown mailer error 126 サーバ会社へ問い合わせたところ、プログラムを起動しに行くmailnullというユーザ(?)の権限の問題だそうです。 mailnullというユーザにプログラムを起動するだけの権限を与えるにはどうしたらよいでしょうか? それとも、ほかの方法がありますでしょうか? よろしくお願いします。

専門家に質問してみよう