3

私はherokuでPHPを使用しています。データベースの挿入とクエリが原因で、リクエストのタイムアウト エラーが発生し続けます。

このエラーを回避するために、すべての php ファイルに次の行を追加しました。

set_time_limit(0);

ただし、まだこのエラーが発生しています。heroku はこのコマンドを無視しますか?

時間制限が変更されているかどうかを確認するために簡単なチェックを行いました。

echo 'TIME : '.ini_get('max_execution_time');
set_time_limit(0);
echo 'TIME : '.ini_get('max_execution_time');

30 (デフォルト値) から 0 に変更されています。変更にもかかわらず、まだエラーが発生しています。

また、phpファイルがajaxによって呼び出されていることを追加したいと思います。

さらに、私が知る限り、php はセーフ モードに設定されていないため、コマンドを無視する理由はありません。

Heroku はバックグラウンド ジョブを使用することを提案しており、私が知る限り、タスクに 30 秒以上かかる場合は強制されます。バックグラウンドジョブを使用せずに管理した人はいますか?

更新:使用してみました:

ini_set('max_execution_time', 0);

それでも働きたくない

4

1 に答える 1

2

Heroku で 30 秒のリクエスト タイムアウトを超える必要がある場合は、バックグラウンド ジョブを使用する必要があります。これを回避する方法はありません (Heroku は、30 秒以上かかる場合、リクエストを強制終了します)。Heroku には、これに関するドキュメントがあります

于 2013-01-14T22:19:21.360 に答える