Я использую curl php на Windows и Android.
на окнах
Версия PHP 5.6.39 / curl 7.59.0
на андроид
Версия PHP 5.6.35 / curl 7.34.0
Я использую php curl для извлечения ссылки на видео с сайта.
Мой код:
$ua=$_SERVER['HTTP_USER_AGENT'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $l);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION ,1);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
$html = curl_exec($ch);
curl_close($ch);
как результат у меня
$video_link_windows="http://....../video.mp4";
$video_link_android="http://...../video.mp4";
Это работало до 2 недель назад.
Теперь ссылка, созданная в Windows, работает как на Windows, так и на Android,
но тот, который генерируется на Android больше не работает.
Мы уже сталкивались с этой проблемой на 3 сайтах.
Я попытался изменить «пользовательский агент», я добавил «cookie», но, похоже, ничего не работает.
Я пытался без
curl_setopt($ ch, CURLOPT_FOLLOWLOCATION, 1);
или добавить заголовок curl_setopt
curl_setopt($ ch, CURLOPT_HTTPHEADER, $head)
Сгенерированные ссылки выглядят идентичными, но не работают.
НО, если я использую вместо curl, я использую file_get_contents
$html=file_get_contents($l);
все приходит в норму.
Что может быть не так или что я должен добавить в код curl?