無限ループなどを避けるためにPHPのタイムアウト時間が設けられています。
デフォルトは30秒
これを回避するのにいくつか方法があります。
php.iniに設定
php.iniに以下を追記します。
max_execution_time = 120
httpd.confや.htaccessに設定
こちらも同じように以下を追記します。
php_value max_execution_time 120
phpファイル個別に設定
phpファイルの先頭に以下を追記します。
set_time_limit(120);
タイムアウトの無制限
値を0に設定すれば、タイムアウトを無制限に設定できます。
が、無限ループに陥るとkillするまで永久に動き続けますし、APレイヤより前のhttpdやFW、プロキシ、ブラウザなどでもタイムアウトがあるでしょう。
また、レンタルサーバの場合はkillされることもあると思いますので、重い処理は分割したり、コードをチューニングするなどの工夫が必要です。