こんにちは!YKです!
今回は、Larvel Forgeを使っているアプリケーションで、以下のエラーが出たときの対処方法について紹介します!
Maximum execution time of 30 seconds exceeded
結論
Laravel Forgeにアクセスして、以下のように設定すればOKです!
手順
- サイドバーから「PHP」をクリック
- 添付画像の赤枠のように設定する
- これでスクリプトの実行時間の制限を3分まで延ばすことができます。
注意点
- 指定するときは、秒数指定します。3分の場合は180秒なので、180を設定しています。
- この値を無闇に大きくすると、リソースを無駄に消費する可能性があるので注意してください。
このエラーの原因
このエラーはスクリプトの実行時間がPHPの設定で設定されている最大実行時間を超えた場合に発生します。
Laravel ForgeではおそらくMax Execution Timeのデフォルト値が30秒であるため、スクリプトの実行時間が30秒を超えると今回のエラーが起きるようです。
●参考:https://blog.laravel.com/forge-update-the-maximum-execution-time
補足
Laravel Forgeを使っていない場合は、php.iniファイルを変更することで設定が可能です
以下のようにphp.iniを編集します。
max_execution_time = 180
上記だと、アプリケーション全体の設定として変更されますが、phpファイル単位で設定することも可能です。その場合は以下のように、スクリプトを実行しているphpファイル設定します。
ini_set('max_execution_time', '180');
●参考記事: https://1-notes.com/php-error-maximum-execution-time-of/