エラー「Maximum execution time of 30 seconds exceeded」が起きた件

アプリケーションを作成していく中で、

APIを作成して、

WebサーバーとしてNginxを稼働させて、

核処理を実装していたが、

処理的に重たい処理を流したときに、

「Maximum execution time of 30 seconds exceeded」

というエラーが発生した。

そのときに、

色々と調べて試した結果、

PHP-Fpmの設定を変更することでうまくいった。

エラー内容

エラーとしては、

Maximum execution time of 30 seconds exceeded

というエラーが、

Laravelのログの方に出力されていた。

対応内容

この辺りのタイムアウトに関しては、

Nginxの方でも、

send_timeout 1000;
client_body_timeout 1000;
client_header_timeout 1000;
fastcgi_connect_timeout 600s;
fastcgi_send_timeout 600s;
fastcgi_read_timeout 600s;
keepalive_timeout 1000;

のように対応していたが、

今回、Laravelの方でエラーになっていたので、

PHP-fpmの方があやあしいと考えて調べたら、

php.iniの設定を変更するとうまくいくようだ。

対象ファイルとして、

/etc/php/8.1/fpm/php.ini

のファイルを修正。

対象箇所として、

max_execution_time = 30

という設定値があったので、

無制限の値である「0」に

max_execution_time = 0

という部分を対応して、

PHP-fpmの再起動も忘れずに実施

sudo service php8.1-fpm restart

この対応でうまくタイムアウトせずに、

うまく処理が最後まで動くようになりました。

スキルを使って、就職/転職/副業する時のサイト

プログラミングのスキルなどを、自分なりに高めた上で、

自分のスキルをアピールして就職や転職を行い、年収をあげるか、

副業という形で、年収にプラスアルファの稼ぎを増やすことはできます。

まずはできる範囲で取り組むことで、

少しずつ、経験値も増え、自分のスキルが収入につながるのでおすすめです。

おすすめ書籍

広告

おすすめ記事