<?php // 设置页面字符编码为UTF-8,确保能正确输出中文 header('Content-Type: text/html; charset=utf-8'); function isLinkValid($url) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', )); // 启用自动跟随重定向 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); $body = curl_exec($ch); $error = curl_error($ch); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($error) { return array('valid' => false, 'reason' => '网络错误'); } if ($httpcode!= 200) { return array('valid' => false, 'reason' => 'HTTP错误: '. $httpcode); } $error_patterns = array( 'class="error-404"' => '分享已取消', '分享的文件已经被删除了' => '文件已删除', '啊哦,你来晚了' => '链接已过期', '链接不存在' => '链接不存在', '分享内容已失效' => '分享已失效', '分享的文件已过期' => '文件已过期', '分享的文件已被取消了' => '分享已取消', 'error-img' => '链接错误', 'error-page' => '页面错误', 'share-error' => '分享错误' ); foreach ($error_patterns as $pattern => $reason) { if (strpos($body, $pattern)!== false) { return array('valid' => false, 'reason' => $reason); } } $valid_patterns = array( 'share-download' => true, // 下载按钮 'share-file-info' => true, // 文件信息 'share-verify' => true, // 提取码验证 'pickcode' => true // 提取码输入框 ); $found_valid_pattern = false; foreach ($valid_patterns as $pattern => $required) { if (strpos($body, $pattern)!== false) { $found_valid_pattern = true; break; } } if (!$found_valid_pattern) { return array('valid' => false, 'reason' => '无效的分享页面'); } return array('valid' => true, 'reason' => '网盘正常'); } // 获取 URL 参数 if (isset($_GET['url'])) { $url = $_GET['url']; $result = isLinkValid($url); header('Content-Type: application/json'); echo json_encode($result, JSON_UNESCAPED_UNICODE); // 添加JSON_UNESCAPED_UNICODE参数,确保中文正常输出 } else { echo "请提供 URL 参数,例如:?url=https://pan.baidu.com/s/xxxx"; } ?>
请求资源或报告无效资源,请点击[反馈中心]