PHPで大量のデータを処理する時にタイムアウト(強制終了)してしまうことがあります。
タイムアウトする時間を設定する場合は、php.iniのmax_execution_timeの値を変更します。
システムの処理内容によっては、重い処理を行わなければいけないことがあります。
その場合は、max_execution_timeを調整しタイムアウト時間を変更すればエラーを回避することができます。
下記にphp.iniのmax_execution_timeの値を変更し、スクリプトのタイムアウト時間(実行時間)を変更した時の方法をメモします。
■ php.iniのタイムアウト時間を変更
SSHでサーバにログインします。
ログイン後、php.iniを編集します。
vi /etc/php.ini
max_execution_timeの値は秒単位で指定します。
max_execution_time = 30
↓変更
max_execution_time = 120
Apacheを再起動すれば反映されます。
/etc/init.d/httpd restart
■ タイムアウトの時間を無制限にする場合
タイムアウトの制限をかけずに無制限に設定する場合は
max_execution_timeの値を「0」に設定します。
max_execution_time = 0
上記の方法でスクリプトのタイムアウトする時間を調整することができます。
しかし、max_execution_timeはサーバの負荷を防止する為にあるので、
無制限に設定したり、大き過ぎる値を設定するなどは避けた方がいいと思います。
プログラムでバグがあった場合、長時間処理を実行して強制終了せずに
スクリプトが動いてしまうという可能性があるからです。