Сбой запроса скручивания (время ожидания)

Я запрашивал файл kml через cron с сайта https nasa.gov. Он работал годами и только сейчас начал терпеть неудачу. Я не получаю никаких ошибок curl — запрос просто истекает. Что-то должно было измениться с сайтом НАСА.

$curl_connection =
curl_init("http://firms.modaps.eosdis.nasa.gov/active_fire/kml/USA_contiguous_and_Hawaii_24h.kml");

//set options
curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 20);
curl_setopt($curl_connection, CURLOPT_USERAGENT,
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, true);
curl_setopt( $curl_connection, CURLOPT_SSL_VERIFYHOST, 0);

//perform our request
$string = curl_exec($curl_connection);

//show information regarding the request
print_r(curl_getinfo($curl_connection));
echo curl_errno($curl_connection) . '-' .
curl_error($curl_connection);

//close the connection
curl_close($curl_connection);

0

Решение

Что-то должно было измениться с сайтом НАСА.

Похоже, они сейчас используют HTTPS:

$ curl http://firms.modaps.eosdis.nasa.gov/active_fire/kml/USA_contiguous_and_Hawaii_24h.kml
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="https://firms.modaps.eosdis.nasa.gov/active_fire/kml/USA_contiguous_and_Hawaii_24h.kml">here</a>.</p>
</body></html>

Все эти годы вы использовали эти данные без гарантий подлинности 🙂

Это может быть полезно для вас: Как сказать curl следовать HTTP-перенаправлениям?.

URL-адрес, возможно, тоже изменился. Но это упражнение оставлено читателю.

0

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

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

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