通过PHP重定向到外部链接时禁止403

时间:2018-10-09 02:15:08

标签: php vlc http-status-code-403

我有一些代码可以通过页面源获取播放列表链接 然后重定向到此播放列表链接 通过这个php文件,用户ageint在vlc程序上运行播放列表 他工作没有问题,但现在向我显示403禁止 图片 https://i.postimg.cc/7Yw1Fs2f/image.png

即使我将链接复制到播放列表并将其直接放在播放列表中 vlc与用户ageint,工作没有任何问题。 图片 https://i.postimg.cc/RVd1477G/image.png

请帮助我检查代码

<?php
$html = file_get_contents("http://wssfree.com/WSSphp/wssbeinsports1/wssbeinsports1.php");

preg_match_all(
     '/(http.*?wmsAuthSign\=[^\&\">]+)/',

    $html,
    $posts, // will contain the article data
    PREG_SET_ORDER // formats data into an array of posts
);

foreach ($posts as $post) {
    $link = $post[0];

header('Location:' .$link);
exit;

}
?>

和用户代理= freeapppsss

1 个答案:

答案 0 :(得分:0)

尝试获取HTML代码:

<?php

$url = "http://wssfree.com/WSSphp/wssbeinsports1/wssbeinsports1.php";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, false);
$html = curl_exec($curl);
curl_close($curl);

echo '<textarea>'.$html.'</textarea>';

然后您可以使用变量$html提取所需的URL。

我确实注意到您有一个for循环,其中每个项目都有一个exit();命令,这将终止PHP页面,因此您不需要preg_match_allpreg_match