[PHP] PHPスクリプトのタイムアウトを調整する

PHPで重い処理を実行すると以下のようなタイムアウトが起こることがある。

タイムアウトは以下のいずれかの方法で調整することができる。ただし、無限ループ回避のためにタイムアウトは無制限にしないこと。

php.ini

.htaccess

PHPファイル

いくらPHPスクリプトのタイムアウトを伸ばしてみても、ウェブサーバーやブラウザにもタイムアウトがある。小手先のワザでタイムアウトを回避するよりも、重たい処理をいかに確実に実行させるか、処理内容を見直すべきだろうな (たとえば、処理を複数フェーズに分割するとか、サーバーに投げてバックグラウンドで実行させるとか)。タイムアウトが起こるかもしれない前提の設計が問題だと思うので。

参考サイト

PHP: set_time_limit – Manual
http://php.net/manual/ja/function.set-time-limit.php

重いphpがタイムアウトしてしまう場合のTips :: 横浜のフリーランスWeb制作者ブログ
http://sigt.jp/blog/web_dev/2010/10/05/evading_time-out_of_php/

[PHP] PHPスクリプトの実行時間を制御する(max_execution_time) – hogehoge foobar Blog Style5
http://d.hatena.ne.jp/mrgoofy33/20100922/1285168658

Fatal error: Maximum execution time of 30 seconds exceededの対処法 – [PHP + PHP] ぺんたん info
http://pentan.info/php/30timeout.html