Live Stream 403 Forbidden

  • Autor Autor Torronf
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
T

Torronf

Curioso
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Hola Programo hace un tiempo en PHP para la captura de IPTV con un buen margen de exito pero en ocaciones me he topado con el 403 Forbidden porque el server no crea la confianza que te permite dar play a un video. He tratado varias vias, aqui le pongo un ejemplo sencillo para ver si entre la experiencia de todos vemos la vuelta al tema.

Para este ejemplo usare esta direccion la cual en un Browser Normal emite una señal sin problema pero a la hora de llevar esta señal a un player local sale el 403.
Enlace eliminado

<?php
$server2 = "http://{$_SERVER['HTTP_HOST']}{$_SERVER['PHP_SELF']}";
$url='https://ul.cdn946.net:8443/hls/le870ahdxekxml.m3u8?s=ZTFdRwPOHSAh4RnQl7BJkQ&e=1594403725';


$opts = array('
http' =>
array(
'header' =>
'Connection: keep-alive',
'User-Agent: Mozilla/5.0 (Windows NT 10.0; ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36',
'Accept: */*',
'Origin: Enlace eliminado',
'Sec-Fetch-Site: cross-site',
'Sec-Fetch-Mode: cors',
'Sec-Fetch-Dest: empty',
'Referer: Enlace eliminado',
'Accept-Language: es-419,es;q=0.9,en;q=0.8,id;q=0.7',
'If-None-Match: "5f08584a-3a9"',
'If-Modified-Since: Fri, 10 Jul 2020 12:00:10 GMT'
),
'ssl' =>
array(
'verify_peer' => false,
'verify_peer_name' => false
)
);

$context = stream_context_create($opts);


$html = fopen($url,"rb", false, $context); //get the html returned from the following url

if (FALSE === $html) {
exit("Failed to open stream to URL");
}

$contents = '';

while (!feof($html)) {
$contents .= fread($html, 8192);
}
$part = explode(chr(10), $contents);
for ($i = 0; $i < count($part) - 1; $i++) {
if (strpos($part[$i], '#') !== false) {
echo $part[$i] . chr(10);
} else {
echo $server2."?ts=Enlace eliminado".($part[$i]).PHP_EOL;
}
}
fclose($html);

?>
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Failed to open stream to URL
 
Se cayo ese enlace aqui les dejo otro mas simple pero operando. Puedes repdroducir perfectamente en cualquier Browser, pero no con el PHP.
<?php
$url='https://ul.cdn946.net:8443/hls/h24146.m3u8?s=AK1YOqRcpTLtDbDnqBXjJg&e=1597084287';
$baseurl=parse_url($url, PHP_URL_HOST);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 20);
curl_setopt($ch, CURLOPT_TIMEOUT,20);
curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0');
curl_setopt($ch, CURLOPT_REFERER, $baseurl);

$html = curl_exec($ch);
print($html);

?>
Resultado :
403 Forbidden

nginx/1.16.0​
 
Última edição:
Es que eso link seguron son temporarles,
tienes que hacerle scrape al player.
 
Voltar
Topo