项目地址:https://github.com/shubaocai/sbc-acgfaka | 网盘备用下载(只需一个文件):https://wwbkx.lanzn.com/ipO5i49r2vla | MIT License
acg-faka(异次元店铺系统) 是个挺好用的发卡 / 卡密销售系统,但官方给的部署方式是 Docker 或者自己配 LNMP——对只有虚拟主机、没有命令行权限的人来说,第一步就卡住了:面板里能上传文件,却没有终端能跑 docker compose,也不一定敢乱改站点配置。
这篇教程讲的是另一条路:一个 PHP 文件,全程在浏览器里点选完成部署。把 deploy.php 传到网站根目录,打开,跟着页面走完六步,再进 acg-faka 自己的安装向导填一下数据库,站点就跑起来了。不需要 Docker、不需要 SSH、不需要 composer,也不用改主机配置。
它和「一条命令安装」的脚本有什么区别
同一套东西,两种装法,按你手上的机器挑:
| 你手上的机器 | 用哪个 | 特点 |
|---|---|---|
| 云服务器 / VPS(有 root、有终端) | install_acgfaka.sh(仓库里的 bash 脚本) |
自动装 Docker、构建镜像、拉 MySQL 和 Redis,一条命令到安装向导 |
| 虚拟主机 / 空间(只有面板和 FTP) | deploy.php(本文) |
浏览器里点六步,程序解压到站点目录,跑在主机自带的 PHP + MySQL 上 |
本文只讲虚拟主机这条路。如果你有服务器,直接看仓库里的脚本和 README。
你需要先准备什么
| 项目 | 要求 | 说明 |
|---|---|---|
| PHP | 8.0 或以上 | 面板里能切 PHP 版本;装之前先确认当前站点用的是 8.0+ |
| MySQL | 5.6 或以上 | 虚拟主机一般要自己在面板里建一个库和用户,记下库名 / 用户名 / 密码 |
| PHP 扩展 | pdo_mysql gd zip bcmath mbstring curl fileinfo openssl |
前四个最容易缺,缺了安装向导和验证码会出问题,面板里勾上即可 |
| 目录权限 | 网站根目录可写 | 部署过程要解压文件、建运行目录 |
| 磁盘 | 建议留 1GB 以上 | 程序本体约 15MB,余量留给日志、缓存和后续上传的附件 |
opcache 和 redis 属于「有更好、没有也能跑」:没有 redis 时程序会自动退回文件会话。
下载 deploy.php
三种方式,随便挑一个:
- 蓝奏云(推荐给国内用户,只有这一个文件):https://wwbkx.lanzn.com/ipO5i49r2vla
- GitHub 仓库:https://github.com/shubaocai/sbc-acgfaka —— 仓库里除了
deploy.php,还有服务器用的安装脚本和完整说明 - 直接取单文件(GitHub 时通时不通,取不到就用上面两个):
https://raw.githubusercontent.com/shubaocai/sbc-acgfaka/main/deploy.php
https://cdn.jsdelivr.net/gh/shubaocai/sbc-acgfaka@main/deploy.php
第一步:上传到网站根目录
用面板的文件管理器或者 FTP,把 deploy.php 放进网站根目录(就是放 index.php 的那一层,别放进子文件夹),然后确认文件权限是 644。
这一步有个坑值得提前说:有些主机(suPHP / suEXEC 模式)对权限很敏感,权限给到 777 反而会直接 500。上传后把文件改成 644、目录保持 755,是最稳的。
第二步:打开页面,设置访问密码
浏览器访问 http://你的域名/deploy.php。第一次打开会让你设一个访问密码(至少 6 位)——这是防止别人扫到这个文件顺手把程序装到你站里。密码只保存在服务器临时目录的哈希值,不写进网站目录。
第三步:看环境检测
页面第一屏会把该查的都查一遍,结果分「通过 / 不通过」:
| 检测项 | 要求 | 不通过怎么办 |
|---|---|---|
| PHP 版本 | ≥ 8.0.0 | 面板里切 PHP 版本(卡乐 / Kangle:网站管理 → PHP 设置;宝塔:站点设置 → PHP 版本;cPanel:MultiPHP Manager) |
| 必需扩展 | 见上表 | 面板里勾选对应扩展;zip 缺失会导致没法解压安装包 |
| 在线下载能力 | curl 扩展或 allow_url_fopen |
两个都没有时,改用「本地上传离线包」 |
| 安装目录可写 | 必需 | 面板里把目录权限放开,或换个可写目录 |
| 剩余空间 | ≥ 200MB | 清理空间 |
upload_max_filesize |
本地上传离线包时需要 ≥ 20M | 面板里调大,或改用在线下载 |
如果页面出现「主机禁用了一部分函数(disk_free_space 等),部署工具已自动跳过,不影响安装」——这是正常的,不用管。 很多虚拟主机(尤其是卡乐 / Kangle)默认禁掉 disk_free_space、chmod、readlink、putenv 这些函数,工具会先探测再调用,探测不到就跳过;「剩余空间」那一栏会显示「主机未开放查询」,也不影响部署。真正要处理的是扩展缺失,那是面板里勾一下的事。
第四步:选择安装位置
两种装法:
- 装到根目录(默认):填
index.php所在目录,装完访问http://你的域名/ - 装到子目录:填比如
shop,装完访问http://你的域名/shop/;工具会自动把程序.htaccess里的RewriteBase改对,不用你手动改
同一个站点想放多个程序的话建议用子目录,互不干扰。
第五步:把程序拿到手
两种方式,页面都支持:
方式一:在线下载(推荐)
点「开始下载并解压」,工具会从上游仓库拉约 15MB 的安装包,分块下载(每块 4MB)——这样即使主机把 upload_max_filesize 卡得很小、或者一次请求不能跑太久,也能拉完。GitHub 直连不通时会自动切换国内加速源,五个源逐个试。
包内自带 vendor/ 依赖,不需要 composer,也不用你在主机上跑任何命令。
方式二:本地上传离线包
如果你的主机连外网都不通,就在能上网的机器上下载官方 zip:
https://github.com/lizhipay/acg-faka/archive/refs/heads/main.zip
然后在页面第 3 步的「本地上传离线包」里传上去。注意页面会显示主机允许的 upload_max_filesize / post_max_size,包约 15MB,主机限制小于这个数就得先调大,或者回到方式一。
解压完成后,页面会告诉你展开了多少个顶层条目。
第六步:建运行目录 + 检查依赖
点「创建运行目录并检查依赖」,工具会做三件事:
- 建出程序运行所需的目录:
runtime/(含日志、缓存、会话、模板编译等子目录)、assets/cache/、app/Plugin/ - 给这些目录放开写权限
- 校验
vendor/autoload.php和index.php是否就位——依赖完整才说明包没下坏
第七步:伪静态
acg-faka 用的是「伪静态 + 入口文件」的路由方式,所以这一步不能跳。
- Apache / LiteSpeed / 卡乐(Kangle):程序包自带
.htaccess,一般零配置就能用。工具会顺手把里面的安全规则和RewriteBase处理好。 - Nginx:虚拟主机如果是 Nginx(或面板里没提供
.htaccess),把页面给的规则贴到站点配置里:
location ~* ^/(runtime|kernel|config|vendor)/ { return 404; }
location ~ /\.(?!well-known) { return 404; }
location ~* \.(log|sql|sqlite|db|db-wal|db-shm|bak|old|save|orig|swp|swo|tmp|ini|lock)$ { return 404; }
location ~* (~|composer\.(json|lock)|package(-lock)?\.json)$ { return 404; }
location / {
try_files $uri $uri/ /index.php?s=$uri&$args;
}
装完程序、进过一次安装向导之后,回到第 5 步点「检测伪静态是否生效」,页面会调程序自己的接口确认规则真的生效了——比你自己访问首页猜要靠谱。
第八步:走 acg-faka 自己的安装向导
点页面上的「打开安装向导」,三步:
- 环境检测:程序自己再查一遍,全绿就下一步
- 数据库:填你在面板里建好的库名 / 用户名 / 密码(
127.0.0.1或localhost)。这一步会建表并导入语言包,需要等十几秒 - 管理员:填邮箱、昵称、登录密码
装完后前台就是商城首页,后台在:
http://你的域名/admin
会用邮箱 + 密码 + 验证码登录(验证码依赖 gd 扩展,看不到验证码就是 gd 没开)。
一个实测会遇到的坑:第 2 步如果卡在「导入语言包」不动了,别急着重装。程序是在导入语言包之前就写了安装锁文件,所以这时候刷新或重试会提示「您已经安装过了」——其实已经装好了,直接去 /admin 登录即可。装完去数据库看一眼,会有 30 张表、上万行语言数据。
第九步:收尾清单
- 删掉
deploy.php:页面第 6 步有「删除本部署文件」按钮。程序自带的.htaccess会拦掉除index.php以外的 PHP 文件,但自己删掉最干净 - 改掉初始管理员密码,别用安装时随手填的那个
- 确认伪静态:第 5 步的检测通过、首页和后台都能正常刷新
- 配好备份:虚拟主机通常在面板里有「备份」功能,至少把数据库定时备一份
- 想省事的话,装完把上面这份流程在面板里记一笔,下次换空间直接照做
常见问题
打开 deploy.php 就 500 / 白屏?
按这三条查:
- PHP 版本太低:低于 7.0 时页面会给一页「PHP 版本过低」的提示(不会白屏);程序本体要求 8.0+
- 主机禁用了函数:工具已尽量跳过(见第三步的说明),如果还有别的函数被禁,页面会显示具体文件和行号
- 文件权限:suPHP / suEXEC 主机要求 PHP 文件 644、目录 755,权限过宽会 500
提示「安装包不完整」?
本地上传的包小于 1MB 会被拒(正常包约 15MB),通常是上传被主机中断了。重传一次,或者改用在线下载。
解压失败 / 提示没有 zip 扩展?
面板里给当前 PHP 版本勾上 zip。这个扩展是解压安装包必需的,没有替代方案。
在线下载一直失败?
工具会依次试五个下载源(GitHub 官方 + 几个国内加速)。全失败一般是主机完全不通外网,那就用「本地上传离线包」。
安装向导提示「您已经安装过了」?
说明安装锁已经写了,去 /admin 登录即可,不用重装。真要重装,得先清空数据库并删掉程序目录里的安装锁文件。
后台登录看不到验证码?
装 gd 扩展。
部署工具会不会把我站点的入口页面覆盖掉?
解压的是 acg-faka 自己的 index.php,会占用站点根目录的入口。所以如果你根目录已经有别的程序(比如博客),请用子目录安装(第四步填 shop 之类)。
关于合规
acg-faka 是 MIT 协议的开源项目,但作者在仓库 README 里明确写了:本程序初衷是提供学习和研究机会,未取得合法资质,严禁用于任何商业用途,尤其是禁止利用本程序搭建平台进行商品销售。 部署和使用前请自行确认合规性——工具只负责把程序装起来,不改变这一点。
相关链接
- 项目仓库(脚本 + 部署工具 + 完整说明):https://github.com/shubaocai/sbc-acgfaka
deploy.php网盘备用下载(蓝奏云):https://wwbkx.lanzn.com/ipO5i49r2vla- 上游项目 acg-faka:https://github.com/lizhipay/acg-faka
装的过程中卡在哪一步,把页面上的提示原样发出来就行——部署工具从 v1.1 起会把出错的文件和行号显示在页面上,不会再白屏让你猜。