三种接入方式按改造成本排序,任选其一。清洗只处理几 KB 的 m3u8 清单文本,正片分段始终直连源站 CDN,不经过本平台。
把站内所有资源站 m3u8 播放地址前拼接:
https://adc.butuan.cn/p?url=【原m3u8地址】地址含 & 等参数时建议做 URL 编码;不含参数的资源站直链可以不编码直接拼接。
m3u8 / json_m3u8),点编辑https://adc.butuan.cn/p?url=如果你的模板没有使用解析前缀字段,改播放页模板:找到输出播放地址的变量,套上代理前缀并编码:
原:{$maccms['vod_data'][0]['url']} 改:https://adc.butuan.cn/p?url={$maccms['vod_data'][0]['url']|urlencode}在播放页 </body> 前加一行:
脚本会自动:改写页面上所有 .m3u8 链接与 video 地址;尽力改写苹果CMS模板的 player_aaaa.url 配置;暴露全局函数 ADCLEAN.proxy(url) 供你自己的播放器代码调用。
播放器取到播放地址后(或请求播放列表接口时),把 m3u8 地址替换为代理地址即可,播放器逻辑零改动:
GET https://adc.butuan.cn/api/clean?url={原地址} 返回 JSON:{ report: 清洗报告, playlist: 净化后清单 }或直接把代理地址交给播放器:
player.play("https://adc.butuan.cn/p?url=" + URLEncoder.encode(url, "UTF-8"));| 端点 | 说明 |
|---|---|
GET /p?url= | 清洗代理,直接返回净化后的 m3u8(主清单自动跟随)。参数:raw=1 返回原始清单;key= API Key |
GET /api/clean?url= | JSON:report(主清单+变体聚合清洗报告)+ playlist 净化后清单 |
GET /api/stats?hours=24 | 平台用量统计 |
POST /api/purge?url=|all=1 | 清除缓存 |
GET /healthz | 健康检查 |
&raw=1 对比原始清单排查。