У меня есть два виртуальных сервера.
Старый: Ubuntu 12.04 с PHP 7.2.
Новое: CentOS 7.9 с PHP 8.0.
На обоих серверах работает одно и то же приложение. Cron ежеминутно получает некоторые данные с другого веб-сайта. аналогичный следующему коду
file_get_contents("http://mirror.facebook.net/centos/timestamp.txt")
На старом сервере все работало. У меня никогда не было проблем. На новом сервере у меня иногда появляется это Сообщение
Предупреждение: file_get_contents(mirror.facebook.net/centos/timestamp.txt): Не удалось открыть поток: Ошибка HTTP-запроса! HTTP/1.0 502 Неверный шлюз
Я понятия не имею, почему это происходит. Это затрагивает около 1% звонков.
Есть ли у кого-нибудь идея, где я могу посмотреть и что я могу сделать, чтобы решить проблему?
[РЕДАКТИРОВАТЬ] Я реализовал отслеживание ошибок и времени, как указано ниже.
Сначала код:
$t0 = микровремя (истина);
$jsonString = file_get_contents($pageUrl);
если ($jsonString === false) {
$t1 = микровремя (истина);
var_dump(sprintf(
'Fehler beim Abruf der URL %s',
$страницаURL,
));
var_dump($t1 - $t0);
var_dump(error_get_last());
вернуть 0;
}
Теперь результат.
массив (4) {
["тип"]=>
интервал (2)
["сообщение"]=>
string(145) "file_get_contents(https://www.example.com/): Не удалось открыть поток: Ошибка HTTP-запроса! HTTP/1.0 502 Bad Gateway
"
["файл"]=>
строка (62) "/path/to/src/Service/WebcrawlerService.php"
["строка"]=>
инт (61)
}
Результат, к сожалению, НЕ предоставляет много подробностей. Это все еще 502