メルマガ・ステップメール配信ソフトMilkyStep利用者のコミュニティです。
他のメルマガ配信プログラムは問題なくメールが配信できます。
考えられる原因は何があるでしょうか?
ちなみにsendmailで配信しています。
水, 5月 26 2010 » ユーザからの投稿
>weblab様 お世話になっております。
メールの送信に失敗した場合は、直前の配信ログにエラーの原因が記録される場合がありあます。
お手数ですが、メールが送信できなかったときの状況を、もう少し具体的に教えていただけますでしょうか?
お世話になります。
最初のメールは1時間半遅れで届きましたが、今は即届きます。
今度は予約配信がうまくできません。
CRONコマンドの記述方法はサーバー会社に確認しましたので、問題ないと思います。
1つ気になることがあるのですが、メルマガを配信した時間が右に表示されますが、サーバーの時間と大きくずれています。
それが原因で予約した時間に配信されないと言うことはあるでしょうか?
>weblab様
>メルマガを配信した時間が右に表示されますが、サーバーの時 >間と大きくずれています。
右側(最近10回の配信履歴)に表示される時刻は、メルマガ配信処理を行う直前の時刻です。 もちろんこれも、サーバの設定時刻から取得しています。
仮にサーバの設定時刻がずれていれば、ここの時刻もサーバに合わせて取得されますので、実際の日本時刻とずれる可能性があります。
ですので、予約配信で「10時00分」に予約したものでも、仮にサーバの時刻が2時間遅れていれば、実際は10:00になっているのに、サーバはまだ8:00だと思って配信を開始しない、という現象が発生する場合があります。この場合、2時間遅れですので12:00に配信されます。
「共通設定」→「配信ログ」を開いたときに、今から10分以内のcron起動時刻のログが一番上にきていれば、サーバの時計はおおむね合っていると言えます。
サーバの時計が正しければ、配信ログを22:28に見たときに、22:20前後に記録されたログが一番上に表示されているはずです。
まずその辺りをご確認願います。
「共通設定」→「配信ログ」で表示される起動日時はサーバーの時間と合っていますが、右側に表示される時間がずれている状態です。
配信履歴一覧に表示される時間はサーバー時間とずれています。
これが原因のようですね。
試しに再インストールしてみましたが、時間のずれは解消されませんでした。
サーバーから時間情報を取得するロジックに問題はないでしょうか?
>weblab様 調査してみたところ、時刻取得処理に問題はありませんでしたが、プログラムの一部に予約配信が正常に行われない不具合が、発見されたため、先ほど最新版(Ver0.76)をアップしました。
ご迷惑をおかけして申し訳ありませんでした。
今回の修正でデータベースの構造変更はありませんので、最新のMilkyStep Lightフォルダをダウンロードしていただき、「ms_light/action.cgi」と「ms_light/lib/ver.pl」を上書きアップロードするだけでOKです。
これで再度お試しいただきますようお願いいたします。
バージョンアップしましたが、予約配信できません。
画面右側の時間がまだずれています。
>weblab様
予約配信がされないのに、右側に履歴が表示されるのはおかしな現象ですね。
時間通りに配信されず、右側にも表示されないということならわかるのですが・・・
右側に表示されるのは、どのタイミングなんでしょうか?
予約した時刻になったときに表示されるのか、予約した時刻をかなり過ぎてから表示されるのか、予約した時点で表示されるのか、教えていただけますでしょうか?
即時配信した後に時間を確認したところずれていました。
ご利用中のサーバで、phpMyAdmin(MySQLを管理するソフト)は使用できるでしょうか?
もし使用できるのであれば、以下を試していただけますでしょうか?
・phpmydminにログインして適当なデータベースを選ぶ。 ・上の方の「SQL」というタブをクリックする。 ・テキストエリアに、「SELECT NOW()」と入力し、右下の「実行する」ボタンをクリックする。 ・中央辺りに小さな表のようなものが表示され、「NOW()」の下にYYYY-MM-DD HH:mm:ss形式で、日時が表示されると思います。 ・その日時が、実際の時刻と合っていれば問題ないのですが、違っていれば、MySQLの設定時刻がずれています。 その場合は、早急にサーバ管理者に連絡し、修正してもらう必要があります。
お手数ですが、一度お試しいただけますでしょうか?
MySQLの時刻がずれていましたので修正しましたが、まだ予約投稿ができない状況です。
他に考えられる原因はないでしょうか?
>weblab様 配信予約がされない、という状況をもう少し詳しく教えていただけますでしょうか?
例えば、 右側と配信履歴に履歴は記録されるでしょうか? 予約された記事は削除されているでしょうか? 配信ログにはなんと記録されるでしょうか?
以上よろしくお願いいたします。
”配信の予約状況”に残ったままです。
「配信の予約状況」に予約が残っている状態で、「ms_light/action.cgi」にブラウザで直接アクセスしてみてください。
「OK! action.cgi……」と表示されると思いますので、その後メールが配信されているか確認してみてください。
ブラウザでaction.cgiにアクセスすると配信されました。
サーバー側の問題でしょうか?
>weblab 様
その可能性が高いです。
取扱説明書にあるように、cron起動時のメールを確認できるのであれば、一度確認した方が良いかと思います。
サーバー会社が構文チェックをしてくれました。
下記のようなエラーがあるようです。
これが原因ではないでしょうか?
-bash-3.2# perl -c /var/www/vhosts/●●●/action.cgi Content-type: text/html
Software error: Can’t locate Unicode/Japanese.pm in @INC (@INC contains: ./ext_lib ./asp_opt /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /var/www/vhosts/●●●/action.cgi line 16. BEGIN failed–compilation aborted at /var/www/vhosts/●●●/action.cgi line 16.
For help, please send mail to this site’s webmaster, giving this error message and the time and date of the error.
[Fri Jun 4 11:11:41 2010] action.cgi: Can’t locate Unicode/Japanese.pm in @INC (@INC contains: ./ext_lib ./asp_opt /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /var/www/vhosts/●●●/action.cgi line 16. [Fri Jun 4 11:11:41 2010] action.cgi: BEGIN failed–compilation aborted at /var/www/vhosts/●●●/action.cgi line 16.
>weblab様 エラーログを見た限りでは「Unicode::Japanese」モジュールが参照できないという構文エラーが出ていますね。
Unicode::Japaneseモジュールは、MilkyStep Lightに同梱されているので参照できないはずはありません。
また、コントロールパネルを操作できる時点で、Unicode::Japaneseモジュールは正常に読み込まれています。
ブラウザからaction.cgiを実行したらメールが配信される(エラーが出ない?)のに、この時だけエラーが出るのはcronの記述がよろしくないからだと思います。
cronコマンドが「cd “msディレクトリの絶対パス”; ./action.cgi」の形になっているかもう一度確認してください。
cronコマンドですが、action.cgiまでのフルパス記述ではダメなのでしょうか? ⇒最後は”; ./action.cgi”で終わらないとダメでしょうか?
ダメというか、取扱説明書にもそのように設定するよう書いてあるのに、そうしない理由がわかりません。
どうしても絶対パス一発で記述したいのならば、すべてのプログラムファイルのUnicode::Japaneseを参照している処理部分を、weblab様の環境に合わせてパスを書き直す必要があります。
残念ですが、弊社で個別にプログラムファイルを書き直すことはできません。
”; ./action.cgi”の記述に変更したところ、無事予約配信ができました。
私自身もいろいろなスクリプトを販売していて、今までフルパス以外で設定するものがなかったことと、サーバー会社からもフルパスで設定するようサポートがあったため、そのように設定していました。
長い間お付き合いいただきましてありがとうございました。
P.S. 弊社が近々始めるホスティングサービスとの相性に問題がないことが分かりましたので、お勧めメルマガ配信プログラムとして検討させていただきます。
>weblab様 ファイル名の指定のみ(”cd…”が利用できない)でしかcronの設定ができない場合の対処法を記載いたしましたので、こちらも併せてご覧ください。 http://milkystep.com/msl_poc/?p=47
Login
>weblab様
お世話になっております。
メールの送信に失敗した場合は、直前の配信ログにエラーの原因が記録される場合がありあます。
お手数ですが、メールが送信できなかったときの状況を、もう少し具体的に教えていただけますでしょうか?
お世話になります。
最初のメールは1時間半遅れで届きましたが、今は即届きます。
今度は予約配信がうまくできません。
CRONコマンドの記述方法はサーバー会社に確認しましたので、問題ないと思います。
1つ気になることがあるのですが、メルマガを配信した時間が右に表示されますが、サーバーの時間と大きくずれています。
それが原因で予約した時間に配信されないと言うことはあるでしょうか?
>weblab様
>メルマガを配信した時間が右に表示されますが、サーバーの時
>間と大きくずれています。
右側(最近10回の配信履歴)に表示される時刻は、メルマガ配信処理を行う直前の時刻です。
もちろんこれも、サーバの設定時刻から取得しています。
仮にサーバの設定時刻がずれていれば、ここの時刻もサーバに合わせて取得されますので、実際の日本時刻とずれる可能性があります。
ですので、予約配信で「10時00分」に予約したものでも、仮にサーバの時刻が2時間遅れていれば、実際は10:00になっているのに、サーバはまだ8:00だと思って配信を開始しない、という現象が発生する場合があります。この場合、2時間遅れですので12:00に配信されます。
「共通設定」→「配信ログ」を開いたときに、今から10分以内のcron起動時刻のログが一番上にきていれば、サーバの時計はおおむね合っていると言えます。
サーバの時計が正しければ、配信ログを22:28に見たときに、22:20前後に記録されたログが一番上に表示されているはずです。
まずその辺りをご確認願います。
お世話になります。
「共通設定」→「配信ログ」で表示される起動日時はサーバーの時間と合っていますが、右側に表示される時間がずれている状態です。
お世話になります。
配信履歴一覧に表示される時間はサーバー時間とずれています。
これが原因のようですね。
お世話になります。
試しに再インストールしてみましたが、時間のずれは解消されませんでした。
サーバーから時間情報を取得するロジックに問題はないでしょうか?
>weblab様
調査してみたところ、時刻取得処理に問題はありませんでしたが、プログラムの一部に予約配信が正常に行われない不具合が、発見されたため、先ほど最新版(Ver0.76)をアップしました。
ご迷惑をおかけして申し訳ありませんでした。
今回の修正でデータベースの構造変更はありませんので、最新のMilkyStep Lightフォルダをダウンロードしていただき、「ms_light/action.cgi」と「ms_light/lib/ver.pl」を上書きアップロードするだけでOKです。
これで再度お試しいただきますようお願いいたします。
お世話になります。
バージョンアップしましたが、予約配信できません。
画面右側の時間がまだずれています。
>weblab様
予約配信がされないのに、右側に履歴が表示されるのはおかしな現象ですね。
時間通りに配信されず、右側にも表示されないということならわかるのですが・・・
右側に表示されるのは、どのタイミングなんでしょうか?
予約した時刻になったときに表示されるのか、予約した時刻をかなり過ぎてから表示されるのか、予約した時点で表示されるのか、教えていただけますでしょうか?
お世話になります。
即時配信した後に時間を確認したところずれていました。
>weblab様
ご利用中のサーバで、phpMyAdmin(MySQLを管理するソフト)は使用できるでしょうか?
もし使用できるのであれば、以下を試していただけますでしょうか?
・phpmydminにログインして適当なデータベースを選ぶ。
・上の方の「SQL」というタブをクリックする。
・テキストエリアに、「SELECT NOW()」と入力し、右下の「実行する」ボタンをクリックする。
・中央辺りに小さな表のようなものが表示され、「NOW()」の下にYYYY-MM-DD HH:mm:ss形式で、日時が表示されると思います。
・その日時が、実際の時刻と合っていれば問題ないのですが、違っていれば、MySQLの設定時刻がずれています。
その場合は、早急にサーバ管理者に連絡し、修正してもらう必要があります。
お手数ですが、一度お試しいただけますでしょうか?
お世話になります。
MySQLの時刻がずれていましたので修正しましたが、まだ予約投稿ができない状況です。
他に考えられる原因はないでしょうか?
>weblab様
配信予約がされない、という状況をもう少し詳しく教えていただけますでしょうか?
例えば、
右側と配信履歴に履歴は記録されるでしょうか?
予約された記事は削除されているでしょうか?
配信ログにはなんと記録されるでしょうか?
以上よろしくお願いいたします。
お世話になります。
”配信の予約状況”に残ったままです。
>weblab様
「配信の予約状況」に予約が残っている状態で、「ms_light/action.cgi」にブラウザで直接アクセスしてみてください。
「OK! action.cgi……」と表示されると思いますので、その後メールが配信されているか確認してみてください。
お世話になります。
ブラウザでaction.cgiにアクセスすると配信されました。
サーバー側の問題でしょうか?
>weblab 様
その可能性が高いです。
取扱説明書にあるように、cron起動時のメールを確認できるのであれば、一度確認した方が良いかと思います。
お世話になります。
サーバー会社が構文チェックをしてくれました。
下記のようなエラーがあるようです。
これが原因ではないでしょうか?
-bash-3.2# perl -c /var/www/vhosts/●●●/action.cgi
Content-type: text/html
Software error:
Can’t locate Unicode/Japanese.pm in @INC (@INC contains: ./ext_lib ./asp_opt /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /var/www/vhosts/●●●/action.cgi line 16.
BEGIN failed–compilation aborted at /var/www/vhosts/●●●/action.cgi line 16.
For help, please send mail to this site’s webmaster, giving this error message
and the time and date of the error.
[Fri Jun 4 11:11:41 2010] action.cgi: Can’t locate Unicode/Japanese.pm in @INC (@INC contains: ./ext_lib ./asp_opt /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /var/www/vhosts/●●●/action.cgi line 16.
[Fri Jun 4 11:11:41 2010] action.cgi: BEGIN failed–compilation aborted at /var/www/vhosts/●●●/action.cgi line 16.
>weblab様
エラーログを見た限りでは「Unicode::Japanese」モジュールが参照できないという構文エラーが出ていますね。
Unicode::Japaneseモジュールは、MilkyStep Lightに同梱されているので参照できないはずはありません。
また、コントロールパネルを操作できる時点で、Unicode::Japaneseモジュールは正常に読み込まれています。
ブラウザからaction.cgiを実行したらメールが配信される(エラーが出ない?)のに、この時だけエラーが出るのはcronの記述がよろしくないからだと思います。
cronコマンドが「cd “msディレクトリの絶対パス”; ./action.cgi」の形になっているかもう一度確認してください。
お世話になります。
cronコマンドですが、action.cgiまでのフルパス記述ではダメなのでしょうか?
⇒最後は”; ./action.cgi”で終わらないとダメでしょうか?
>weblab様
ダメというか、取扱説明書にもそのように設定するよう書いてあるのに、そうしない理由がわかりません。
どうしても絶対パス一発で記述したいのならば、すべてのプログラムファイルのUnicode::Japaneseを参照している処理部分を、weblab様の環境に合わせてパスを書き直す必要があります。
残念ですが、弊社で個別にプログラムファイルを書き直すことはできません。
お世話になります。
”; ./action.cgi”の記述に変更したところ、無事予約配信ができました。
私自身もいろいろなスクリプトを販売していて、今までフルパス以外で設定するものがなかったことと、サーバー会社からもフルパスで設定するようサポートがあったため、そのように設定していました。
長い間お付き合いいただきましてありがとうございました。
P.S.
弊社が近々始めるホスティングサービスとの相性に問題がないことが分かりましたので、お勧めメルマガ配信プログラムとして検討させていただきます。
>weblab様
ファイル名の指定のみ(”cd…”が利用できない)でしかcronの設定ができない場合の対処法を記載いたしましたので、こちらも併せてご覧ください。
http://milkystep.com/msl_poc/?p=47