PHPとMYSQL、LINUXにてメールの一括配信についてなのですが、件数が5000件ほどある会員に定期的にメルマガを配信しています。

現在は、PHPのmb_send_mailでループをかけて配信しているのですが、phpのタイムアウトがあり、一回では全部配信できない為、1000件程度に区切って、
画面上でクリックし、ループ配信を継続している段階です。(5000件だと5回クリックしています)

他に何かいい方法などありませんでしょうか?
出来れば一回セットしただけで送れるようにしたいです。
(内部的には分割でも問題ありません)

現在はレンタルサーバを利用しているので、それほど拡張はありませんが、
専用サーバで可能ならそちらの選択も考えています。

宜しくお願いします。

回答の条件
  • 1人3回まで
  • 登録:2007/11/09 17:06:02
  • 終了:2007/11/15 09:50:23

回答(3件)

id:wildwell No.1

wildwell回答回数13ベストアンサー獲得回数02007/11/09 17:29:54

ポイント27pt

PearのMail_Queueとcronを使ってはいかがですか?

DBにいったん送信するメールの情報を格納して、cronで定期的にちょっとずつ送信するような感じで。

ただ、安価な鯖だとcronが使えないところが多いですね。

そうであれば、JavaScriptとかで実現するのがいいのかな、と思います。

http://phpspot.net/php/man/pear/package.default.mail-queue.html

id:chirubo

なるほど。

Mail_Queueは一度使おうかと考えていました。

javascriptだと現在のものでも置き換え出来そうですね。

ありがとうございます。


他にもいろいろあるのかな。

2007/11/09 22:46:32
id:hamster078 No.2

hamster078回答回数587ベストアンサー獲得回数42007/11/10 06:00:06

ポイント27pt

ホームページのレンタルサーバーで多量のメールを送るのは、そもそもどこでも規約違反です。よく削除されないものです。

専用サーバーであれば、メールサーバーを立ち上げれば、好きなだけ送れます。phpの時間制限だって切れます。というか、phpを使う理由がない。

id:chirubo

もちろん、規約の範囲内でやっていますので大丈夫です。

専用サーバならphpを使わなくてもいいというのは、直接qmailなどを使ってということですよね。

WEBでの送信文作成などはPHPで作っていますので、そこからシェルスクリプトを起動して送信するということでしょうか。

2007/11/10 09:22:08
id:dkitagawa No.3

dkitagawa回答回数7ベストアンサー獲得回数12007/11/10 13:17:54

ポイント27pt

ネタ的ですが、

1.メルマガの送信ページで「送信ボタン」を押す。

2."send500.php?cnt=1" みたいなgetで500件分ぐらいを送信するPHPファイルを叩き、metaタグのrefreshで1分後ぐらいに "send500.php?cnt=501" と次の500に飛ばす。

3.5000件までループさせる。

制約の厳しいレンタルサーバのまま、できるっちゃできそうです。

(ダサいとか言わない)

id:chirubo

javascriptに近いですが、なかなか面白い方法ですね笑

実用度はちょっとわかりませんが、具体的にありがとうございます。

2007/11/10 16:35:52

コメントはまだありません

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

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

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

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