1

スクリプトはありますが、タイムアウトし続けます。php.iniの制限を引き上げましたが、スクリプトはまだ一晩でタイムアウトするようです。

私がやりたいのは、スクリプトへのURLをブラウザウィンドウで開いたままにし、スクリプトが常に実行されていることを確認するために、スクリプトを1時間ごとに自動的に更新することです。

これを行うために/index.phpに挿入できるものはありますか?おそらくメタリフレッシュ?

または、他のアイデアを歓迎します。ありがとうございます。

4

2 に答える 2

4

クライアント側の更新:

<meta http-equiv="refresh" content="15; url=http://localhost/">

サーバー側の更新:

<?php header("refresh: 15; url=http://localhost/"); ?>

15は、15秒後に更新することを意味します。http://localhost/の代わりにURLをスクリプトに挿入する必要があります

于 2011-12-16T09:40:37.840 に答える
0

スクリプト自体にタイムアウトを設定すると、本当に必要な場合(タイムアウトした場合など)にスクリプトをリセットしたくない場合があるため、問題になる可能性があります。

ずっと前に使っていたのは、次のようなコンセプトでした。

2つのスクリプトがあり、1つはもう1つを監視しています。

機能スクリプトは、ループが完了するたびにタイムスタンプ付きのファイルを書き込みます(ある種のループを実行していると想定しています)。

これで、モニタースクリプトは非常に単純になり、30秒ごとにタイムスタンプファイルをチェックし、タイムスタンプが古すぎる(たとえば最近更新されていない)ことに気付くとすぐに、機能スクリプトを再開するJS行をエコーし​​ました。新しい窓。このように、機能スクリプトは、動作を停止した後にのみ再度開かれます。

監視スクリプトはJSの行をエコーし​​て、30秒ごとに更新を続けます(settimeoutを使用)。このアプローチは、コンピューターの背後にいて、スクリプトがタイムアウトして再起動するのを待っていることをシミュレートします。

これを使った例が必要な場合はお知らせください。ただし、これがこの問題を解決する方法です。

于 2011-12-16T10:11:18.920 に答える