実行時間を長くする機能を追加しましset_time_limit(0);
たが、最大で 2 ~ 3 分しか実行できません。
error_reporting(E_ALL);
error_reporting(1);
set_time_limit(0);
時間のかかるサイトからリンクを検索したい。
PHP ファイル (例: my_lengthy_script.php)
ini_set('max_execution_time', 300); //300 seconds = 5 minutes
.htaccess ファイル
<IfModule mod_php5.c>
php_value max_execution_time 300
</IfModule>
その他の構成オプション
<IfModule mod_php5.c>
php_value post_max_size 5M
php_value upload_max_filesize 5M
php_value memory_limit 128M
php_value max_execution_time 300
php_value max_input_time 300
php_value session.gc_maxlifetime 1200
</IfModule>
wordpressの場合はconfig.phpファイルにこれを設定し、
define('WP_MEMORY_LIMIT', '128M');
Drupal の場合、sites/default/settings.php
ini_set('memory_limit', '128M');
他のフレームワークを使用している場合は、
ini_set('memory_limit', '128M');
メモリはギガバイト単位で増やすことができます。
ini_set('memory_limit', '3G'); // 3 Gigabytes
259200 の意味:-
( 259200/(60x60 minutes) ) / 24 hours ===> 3 Days
これらのコード行を htaccess ファイルに追加します。それがあなたの問題を解決することを願っています。
<IfModule mod_php5.c>
php_value max_execution_time 259200
</IfModule>
まあ、あなたは共有サーバー上にいるので、それについて何もすることはできません. 彼らは通常、最大実行時間を設定するので、それを上書きすることはできません。彼らに連絡することをお勧めします。
max_execution_time を変更するには 2 つの方法があります。
1. php.ini ファイルで直接設定できます。
2. 次に、コードに次の行を追加できます。
ini_set('max_execution_time', '100')
これは古い質問ですが、誰かが今日それを見つけた場合、php は php-fpm と mod_fastcgi を介して実行される可能性があります。その場合、Apache は 30 秒間何も出力しないプロセスへの接続を終了するため、実行時間を延長するのに役立つものは何もありません。それを拡張する唯一の方法は、Apache (モジュール/サイト/仮想ホスト) 構成で -idle-timeout を変更することです。
FastCgiExternalServer /usr/lib/cgi-bin/php7-fcgi -socket /run/php/php7.0-fpm.sock -idle-timeout 900 -pass-header Authorization
Web サーバーに制限が設定されている可能性があります。一部のブラウザ/プロキシもタイムアウトを実装します。HTTP リクエストを介して実行時間の長いプロセスを呼び出すのは、単純にばかげています。問題を解決する正しい方法 (処理をこれ以上高速化できないと仮定) は、HTTP 要求を使用して Web サーバー セッション グループの外部で処理をトリガーし、結果セットが得られるまで HTTP 経由でステータスをポーリングすることです。