我有一个cURL脚本,我一直被用来检查一个m3u8文件是否存在于te服务器上,所以是,然后播放mp4文件,所以,否,然后让我们离线查看图片。
但从昨天开始,脚本就不再起作用了。我用curl检查了m3u8文件是否存在,然后在http代码200上进行了检查。是否有其他方法可以检查服务器上是否存在m3u8文件?
<?php
function url_test( $url ) {
$timeout = 10;
$ch = curl_init();
curl_setopt ( $ch, CURLOPT_URL, $url );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_TIMEOUT, $timeout );
$http_respond = curl_exec($ch);
$http_respond = trim( strip_tags( $http_respond ) );
$http_code = curl_getinfo( $ch, CURLINFO_HTTP_CODE );
if ( ( $http_code == "200" ) || ( $http_code == "302" ) ) {
return true;
} else {
// return $http_code;, possible too
return false;
}
curl_close( $ch );
}
$website = "***.m3u8";
if( !url_test( $website ) ) {
echo $website ." is down!";
}
else { echo $website ." functions correctly."; }
?>为什么这不再起作用了?cURL说文件不在服务器上,但我可以在同一链接上用我的笔记本电脑下载它。
谁能帮上忙?
谢谢。
Marv
发布于 2020-05-02 04:52:31
打开浏览器,按F12,然后在按F12时刚打开的框中选择“网络”选项卡。然后将m3u8 url粘贴到浏览器地址栏中并按回车键。请求必须显示在网络部分的请求列表中。单击请求并查看您从服务器收到的HTTP状态代码;它可能是200或302之外的另一个状态代码(脚本中涉及的情况)。
我还想补充说:
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);https://stackoverflow.com/questions/61550367
复制相似问题