资源站中心
资源站中心是 MacCMS LA 内置的采集源管理器,无需安装插件即可:从云端目录聚合资源站、一键采集并智能绑定分类,并提供完善的批量维护工具。
功能亮点
- ⚡一键采集
从目录中选择资源站,几秒内开始采集——分类绑定与播放器配置全自动完成。
- 🧠智能分类绑定
四层匹配(精确 → 去后缀 → 同义词 → 模糊),将远程分类映射到你的本地分类。
- 🎬自动播放器配置
从 API 返回中识别播放器标识,自动建立播放器记录并生成 DPlayer JS 文件。
- ⏱️自定义与定时
添加你自己的私有采集源、设置周期性定时采集,并通过多窗口并行运行多个任务。
- 🧰批量操作
批量启用/禁用播放器,对
vod / art / manga 字段批量替换,安全合并重复分类。 - 🛡️默认安全加固
所有对外请求经过 SSRF 校验;破坏性操作强制 POST,并生成可恢复的备份日志。
资源站目录
页面打开后,每个资源站以卡片形式按类型分组展示。每张卡片包含相同的几个字段,以及一个表示是否可用的彩色指示灯。
- •
名称 ——资源站的对外显示名称。 - •
API 地址 ——资源站中心将访问的 JSON 或 XML 接口地址。 - •
说明 ——来自目录的简短备注,或你的自定义注释。 - •
状态指示灯 ——颜色表示最近一次检测的结果。
绿色 ——上次检测成功,资源站可用。红色 ——上次检测失败,接口宕机或不可达。黄色 ——尚未检测;点击检测 进行测试。
- ✓
加密传输 ——使用 AES-256-CBC 加密,防止数据被篡改。 - ✓
本地缓存(3 小时) ——减少对上游接口的请求次数。 - ✓
Hash 差异增量更新 ——只在上游 Hash 变化时才覆盖本地缓存。 - ✓
格式校验 ——格式错误的远端数据不会覆盖本地副本。 - ✓
容错回退 ——上游故障时自动使用最近一次成功的备份缓存。
30 秒快速开始
进入
- 1找到目标资源站,点击
检测 确认可用。 - 2点击
进入采集 。系统会静默完成分类绑定、注册缺失的播放器,并跳转到采集页面。 - 3确认预览后开始采集——默认拉取最近 24 小时数据,先列表后详情,图片同步默认关闭。
| 选项 | 默认值 | 说明 |
|---|---|---|
| 时间范围 | 24 小时 | 采集最近 N 小时内更新的数据。 |
| 采集模式 | 列表模式 | 先列表后详情,节省带宽。 |
| 图片同步 | 关闭 | 开启后将远端海报图片同步到本地。 |
智能分类绑定
当远程使用「动作片」而本地使用「动作」时,系统会按顺序尝试四种匹配策略,命中第一个即停止。
- 11. 精确匹配
远程名与本地名完全相同,直接绑定。
- 22. 去后缀匹配
去除常见后缀(
片 / 剧 / 类 )后再比较,例如动作片 → 动作 。 - 33. 同义词匹配
查询
application/extra/type_synonyms.php 中的同义词表,例如科幻 ↔ 科幻片 ↔ SF 。 - 44. 模糊匹配
互相包含且相似度 ≥ 60%——仅作兜底使用。
同步分类到本地
有时你并不想等待采集完成才绑定分类——只想把远程分类先创建到本地,让用户可以浏览。这时使用
- 1点击资源站卡片上的
同步分类 按钮。 - 2弹出窗口列出所有远程分类,已存在的本地分类会被置灰。
- 3勾选需要同步的分类,并选择父分类。
- 4确认——系统自动创建分类,并以拼音作为
type_en 。
自动播放器配置
系统读取每条视频返回的
- ✓如果
application/extra/vodplayer.php 中不存在则创建播放器记录。 - ✓在
static/player/{标识}.js 生成基于 DPlayer 的播放器文件。 - ✓校验标识必须符合
[a-zA-Z0-9_-]{1,32} ,防止目录穿越攻击。
定时采集
点击资源站卡片上的
- ⏱默认间隔 2 小时(可自定义)。
- ⏱默认每天每小时执行。
- ⏱存储在
application/extra/timming.php ——请确认服务器 crontab 或内置定时器已正常运行。
添加到采集列表
希望从
多窗口采集
需要同时采集多个资源站?点击顶部工具栏的
添加多个资源站 URL,点击开始,系统会为每个资源站打开一个采集窗口。各窗口独立运行——暂停或关闭其中任何一个都不会影响其他。
自定义资源站
需要让一个私有 API 与云端目录隔离?在页面底部
- ⚙
名称 ——显示标签。 - ⚙
URL ——API 接口地址。接口类型 可选 JSON(推荐)或 XML。 - ⚙
模块 ——除非有自定义模块,请选择视频 (1) 。
批量维护工具
顶部工具栏提供四个独立于任一资源站的维护工具:
浏览所有有封面的视频,按是否推荐筛选,批量为首页轮播设置推荐等级。路径:
一次性启用、禁用、删除或重写多个播放器的解析地址。路径:
在
两步式安全流程:先按
安全模型
每一个对外请求和写入操作在执行前都已加固。
- 🛡
SSRF 防护 ——只允许http(s) ;内网、回环、云元数据地址在 DNS 解析阶段被拦截。 - 🛡
加密目录订阅 ——云端目录使用 AES-256-CBC 加密,本地缓存 3 小时,远端返回异常时回退到最近一次有效缓存。 - 🛡
强制 POST 采集触发 ——采集不能被任意 GET 链接触发。 - 🛡
白名单数据库写入 ——批量替换只允许操作vod / art / manga ,并严格校验字段名与执行参数化 SQL。 - 🛡
备份 ——重复分类清理在删除任何数据前都会先把完整恢复日志写入runtime/log/ 。
常见问题
资源站目录加载失败怎么办?▾
分类绑定不准确怎么办?▾
播放器添加后没有画面?▾
如何使用多窗口同时采集?▾
定时任务一直不执行?▾
相关文件
如果你需要深入排查或手动编辑配置,以下是支撑资源站中心的控制器、视图与配置文件。
| 文件路径 | 说明 |
|---|---|
| application/admin/controller/ResourceHub.php | 资源站中心主控制器。 |
| application/admin/controller/BatchPlayer.php | 批量播放器管理控制器。 |
| application/admin/controller/DataReplace.php | 数据替换控制器。 |
| application/admin/view_new/resourcehub/index.html | 资源站目录页面。 |
| application/admin/view_new/resourcehub/poster.html | 海报管理页面。 |
| application/admin/view_new/resourcehub/multi_collect.html | 多窗口采集页面。 |
| application/admin/view_new/batchplayer/index.html | 批量播放器管理页面。 |
| application/admin/view_new/datareplace/index.html | 数据替换页面。 |
| static_new/js/resourcehub.js | 资源站中心前端 JS。 |
| application/extra/resource_sites_custom.php | 自定义资源站存储(运行时自动生成)。 |
| application/extra/type_synonyms.php | 分类同义词对照表。 |
| application/extra/vodplayer.php | 播放器配置。 |
| application/extra/timming.php | 定时任务配置。 |
| application/extra/bind.php | 分类绑定配置。 |