苹果CMS(MacCMS)是一款以 PHP 语言编写的开源影视内容管理系统,主要面向影视类网站的搭建与内容组织。其主流版本为苹果CMS V10(常写作 maccms V10 或 MacCMS10),基于 ThinkPHP 框架开发,以采集绑定、自定义播放器、伪静态路由、多分组权限和插件生态为核心能力,是影视建站领域讨论度较高的建站程序之一。本词条从版本生态、功能模块、采集配置形态与模板机制等角度提供客观的档案式介绍,供建站者选型时参考。
基本信息
| 项目 | 内容 |
|---|---|
| 词条名 | 苹果CMS |
| 别名变体 | maccms、苹果cms V10、MacCMS10、苹果CMS程序 |
| 类型 | 影视内容管理系统(建站程序) |
| 技术栈 | PHP + MySQL,V10 版本基于 ThinkPHP 框架 |
| 适用CMS | 自身即独立 CMS;V8 为早期版本,V10 为当前主流 |
| 生态活跃度评价 | 较高:模板、插件、资源接口等周边生态成型,社区讨论多,教程资料易于检索 |
| 上手难度评价 | 中等:安装流程简单,但采集配置、伪静态与模板适配需要一定基础 |
接口地址格式
苹果CMS 本身不自带内容数据,影视类站点通常通过「采集绑定」从资源站获取数据。所谓采集接口,是资源站对外提供的数据输出端点;站长在程序后台的资源管理功能中,将资源站的接口地址添加进来,即可按分类或按需拉取影片数据。其格式示例形态如下(此处仅为格式示意,实际地址需以所选资源站官方公布的为准):
http://你的域名/api.php/provide/vod/?ac=list
需要说明的是,格式示例中「你的域名」为占位写法,代表资源站自身的接口域名;站长应从资源站文档处获取完整地址后填入后台的采集接口配置项。接口地址后通常附带查询参数,用以控制返回数据的范围与形态,常见参数包括 ac(指定动作类型,如 list 表示列表数据、detail 表示详情数据)、at(指定输出格式,常见取值为 xml 或 json)、ids(按影片编号精确筛选,可指定单个或多个编号)、pg(指定页码,用于翻页拉取列表)。此外,部分资源站还支持按分类、时间等条件过滤,具体以资源站接口文档为准。站长在配置采集时,应先核对接口的参数支持情况,再安排采集计划,避免频繁请求对资源站造成压力。
参数表
以下为苹果CMS V10 采集接口常见参数的档案说明,参数名以资源站实际支持为准:
| 参数 | 含义 | 常见取值与说明 |
|---|---|---|
| ac | 动作类型 | list 为列表数据,detail 为详情数据,是采集请求的基础参数 |
| at | 输出格式 | xml 或 json;V10 默认以 json 解析,需与接口返回格式一致 |
| ids | 影片编号 | 按编号精确拉取,可传单个或以逗号分隔的多个编号 |
| pg | 页码 | 控制列表翻页,配合分批采集使用,避免一次性请求过大 |
| h | 时间范围(小时) | 限定返回最近 h 小时内更新的数据,常用于定时增量采集 |
| t | 分类编号 | 部分接口支持按分类筛选,取值依赖资源站的分类体系 |
| wd | 关键词 | 按名称关键词搜索影片,多用于补齐缺失数据 |
配置要点
- 版本选择:新站建议直接使用 V10 版本,V8 属早期版本,已不再建议作为新项目的起点;两者数据表结构与模板体系并不互通,迁移需重新适配。
- 采集绑定:添加资源站接口后,先小范围测试分类映射与字段对应关系,确认标题、封面、分类等数据落位正确,再扩大采集范围,并合理设置采集周期。
- 伪静态路由:V10 支持自定义 URL 规则,建议根据服务器环境(如 Nginx、Apache)配置对应的重写规则,使页面地址呈现目录化形态,兼顾可读性与收录友好度。
- 播放器配置:V10 允许自定义播放器,采集数据的播放来源需与后台播放器一一对应,否则会出现播放页无法解析的情况;新增来源时同步补充播放器配置。
- 权限与安全:利用多分组权限区分会员与访客的浏览权限;同时及时更新程序版本,修改默认管理员账号信息,定期备份数据库,降低运维风险。
常见问题
苹果CMS V8 和 V10 该选哪个?
两者是不同代际的版本:V8 为早期版本,模板与插件资料存量较多但已显陈旧;V10 基于 ThinkPHP 重构,功能更完整、维护更活跃,是当前社区的主流选择。除需沿用旧站数据的情况外,新站一般建议从 V10 开始。
采集后数据不全或封面不显示怎么办?
常见原因有三类:一是接口参数与资源站实际支持不一致,例如输出格式设置错误导致解析失败;二是采集绑定时的分类映射不完整,部分资源分类没有对应到本地分类;三是图片存储方式配置不当,封面图依赖外链时受来源站可用性影响。建议逐项核对采集配置与分类映射,必要时补充本地化存储设置。
伪静态设置后页面打不开是什么原因?
多为服务器重写规则未生效所致:需确认服务器环境(Nginx、Apache 等)已加载对应的重写配置,且程序后台选择的伪静态规则与服务器配置相匹配。更改规则后建议清理缓存再验证,逐步排查是规则缺失还是配置冲突。