Skip to content

MacCMS安装教程 ​

本文介绍如何安装MacCMS V10影视资源管理系统。MacCMS可用于自建影视数据源,配合空壳影视使用。

什么是MacCMS ​

MacCMS是一个开源的影视资源管理系统,支持:

  • 资源聚合:可聚合多个采集站的内容
  • 定时采集:自动更新影视数据
  • API接口:提供标准JSON接口,支持空壳影视对接
  • 分类管理:支持自定义影视分类

适用场景

如果你想拥有自己的影视数据源,或者不满足互联网上公共资源,可以自建MacCMS站点。

环境要求 ​

MacCMS V10 基于 ThinkPHP5(源码里 thinkphp/base.php 固定为 THINK_VERSION = 5.0.24)框架,运行环境:

  • Windows 平台:IIS / Apache / Nginx 等 + PHP + MySQL(5.5+)
  • Linux/Unix 平台:Apache / Nginx 等 + PHP + MySQL(5.5+)

PHP 版本怎么选

这里有三层口径,容易被官方文档的一句话带偏,结合源码说清楚:

  • 入口脚本只硬拦 < 5.5:index.php / admin.php / api.php / install.php 第 11 行都是 if(version_compare(PHP_VERSION,'5.5.0','<')) die(...),即低于 5.5 直接拒绝运行,这是程序层面唯一的硬性下限。
  • composer 实际要求 >= 7.0:源码 composer.json 的 require 写的是 "php": ">=7.0",用 composer 装依赖时低于 7.0 会被挡下。所以别真用 5.5/5.6 去跑。
  • 实际推荐 PHP 7.x:PHP 8.x 下 ThinkPHP5 会碰到类型声明不兼容的报错(比如 Argument #2 ($array) must be of type ?array, string given),能跑但容易出问题。新装站直接选 PHP 7.x 最稳。遇到报错看部署排障。

以下以宝塔面板为例来安装 MacCMS。

安装宝塔面板 ​

创建网站 ​

进入宝塔面板,点击网站,点击添加网站,填写网站名称、根目录、PHP版本、数据库信息等信息,点击提交。 宝塔面板添加网站宝塔面板添加网站

下载MacCMS源码 ​

  • 进入网站根目录,上传或远程下载MacCMS V10的源码。 进入网站

https://github.com/magicblack/maccms10/archive/refs/heads/master.zip

MacCMS源码下载MacCMS源码远程下载

安装MacCMS ​

将下载的源码压缩包解压,建议解压到网站根目录。

MacCMS源码解压

  .
  │─application //应用目录
  │  │─admin //后台模块
  │  │─api //api模块
  │  │─common //公共模块
  │  │─extra //配置文件
  │  │─index //前台模块
  │  │─data //应用初始化和数据库备份目录
  │  │─install //安装模块
  │  │─lang //语言包
  │  │─database.php //数据库配置文件
  │  │─config.php //tp5应用配置文件
  │  │─route.php //伪静态路配置文件
  │  └─common.php //公共函数
  │─addons //插件目录
  │─extend  //扩展目录
  │─runtime //缓存目录
  │─static //静态文件目录
  │─template //前台模板目录
  │─thinkphp //tp目录
  │─upload //附件目录
  │─vendor //第三方库目录
  └─index.php //前台入口文件
  └─api.php //api入口文件
  └─admin.php //后台入口文件

至此,可使用之前绑定的域名或IP来访问MacCMS了。
初次访问会进入安装界面。

MacCMS安装界面MacCMS安装界面

注意

新建空网站最好选择覆盖数据和创建初始化数据

安装完成 ​

MacCMS 有三个入口文件,分工如下:

  • index.php:前台(访客看的页面)
  • admin.php:后台(你管理内容的地方)
  • api.php:API 接口(对接空壳影视等 App 用)

装完必须改掉后台入口的文件名,这不是「可选的安全建议」而是硬性步骤。进网站根目录找到 admin.php,重命名成别人猜不到的名字,例如 admin7854.php,之后用"域名 + 新文件名"进后台,如 www.xx.com/admin7854.php。

不改名后台直接打不开

admin.php 源码里写死了强制改名检查(第 36–39 行):只要访问路径里还带着 /admin.php,程序会直接输出一句「请将后台入口文件 admin.php 改名…」然后 exit,根本不会加载后台。

php
if(strpos($_SERVER["SCRIPT_NAME"],'/admin.php')!==false){
    echo '请将后台入口文件admin.php改名,避免被黑客入侵攻击...';
    exit;
}

这个检查只有 admin.php 有,index.php 和 api.php 都没有。所以用默认 admin.php 访问后台只会看到这句提示、进不去,改名后用新文件名访问才能打开后台。

装完务必做安全加固

自建站暴露在公网上,ThinkPHP5 历史上有过远程命令执行漏洞,不加固很容易被人利用。后台改名只是第一步,还要关调试、收紧权限、及时打补丁,详见安全加固。

安装结束。

常见问题 ​

1,如何修改数据库连接配置文件?

手动修改数据库连接信息,数据库密码等信息文件存储在: /application/database.php

2,如何重新安装?

删除文件: /application/data/install/install.lock 重新访问域名即可。

  1. 如何设置伪静态? nginx下除了首页其他都是404怎么办?
nginx
 if (!-e $request_filename) {
        rewrite ^/index.php(.*)$ /index.php?s=$1 last;
        rewrite ^/admin.php(.*)$ /admin.php?s=$1 last;
        rewrite ^/api.php(.*)$ /api.php?s=$1 last;
        rewrite ^(.*)$ /index.php?s=$1 last;
        break;
 }

如果修改了admin api.php的文件名,请修改以上规则。

更多部署中遇到的报错(PHP 版本不兼容、后台 404、采集无数据、跨域等),见部署排障大全。