Почему моя последовательность запросов curl через PHP возвращает ошибку 504?

Я извлекаю из таблицы базы данных набор из почти 1500 данных, и для каждой из этих данных я должен вызывать конечную точку через CURL следующим образом:

for($i=0; $i <1500; $i++) {
$headers = [
'Host: www.hostname.it',
'Accept: application/json, text/javascript, */*; q=0.01',
'X-Requested-With: XMLHttpRequest',
'Accept-Language: it-it',
'Content-Type: application/x-www-form-urlencoded; charset=UTF-8',
'Origin: https://www.desiderimagazine.it',
'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30',
'Connection: close',
'Referer: https://www.hpstname.it/page/registrazione?utm_source=gate2000&utm_medium=display&utm_campaign=ghh_gen18_regist&utm_content=leadcampaign2',
'Content-Length: '.mb_strlen($post_fields, '8bit')
];$ch = curl_init($endpoint);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_ENCODING , "");
curl_setopt($cu, CURLOPT_USERAGENT, "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/601.6.17 (KHTML, like Gecko) Version/9.1.1 Safari/601.6.17");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 24000);
curl_setopt($ch, CURLOPT_CONNECTIONTIMEOUT, 24000);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post_fields);  //Post Fields

$result = curl_exec($ch);

// .. here I save the result on database
}

Я запускаю скрипт, вставляя его URL в браузер, и он работает нормально (я правильно вижу результаты в базе данных и ответ конечной точки) для первых 20-30 данных, более или менее. После этого я систематически получаю

Ошибка 504 — Тайм-аут ошибки шлюза

Я подозреваю, что это мог быть способ, которым я выполняю это, но должна быть некоторая конфигурация, которую я могу изменить в своем коде, чтобы исправить это.

Спасибо

1

Решение

Задача ещё не решена.

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

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

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