504 через 120 секунд

У меня есть этот код

$url="site.com";//~
$opts=array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept: */*i\r\n".
"User-Agent: Your application name\r\n",
"ignore_errors" => true,
"timeout" => 1800
),
"ssl"=>array(
"allow_self_signed"=>true,
"verify_peer"=>false,
"verify_peer_name"=>false,
)
);
$page = file_get_contents($url, false, stream_context_create($opts));
...
...

Если $ URL (веб-страница) небольшого размера — скрипт работает хорошо.

Но когда размер большой, а время работы начинает превышать 120 секунд —

процесс собирается прерваться и отображается 504 ОШИБКА.

В начале сценария я добавляю:

ini_set('max_execution_time',18000);
ini_set('default_socket_timeout',18000);
ignore_user_abort(true);
ini_set('memory_limit','512M');

В ini.php Я добавляю следующее:

max_execution_time = 18000;
max_input_time = 18000;

Но ничего не помогает.

Вопрос: Как продлить время выполнения скрипта — более 120 секунд?

PS: Все вышеперечисленное (max_execution_time, …) изменено в соответствии с указанными phpinfo ()). Но параметры realpath_cache_size а также realpath_cache_ttlphpinfo () написано, что равно 120) не меняется. Может быть проблема в этом?

0

Решение

Ваш код работает так долго, как вы его установили,
Infact, если вы просто добавите в начало своего кода

       set_time_limit(0);

Это не остановится до конца,
Однако, если вы хотите дождаться вывода, вам нужно установить ограничение времени ожидания Apache2, а также ограничение времени ожидания вашего браузера.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]