[程序发布] Flinthub1.0.0正式发布。

👑Lv.11 元老 🌏 正式会员
2026-09-13 16:25:34

FlintHub 1.0.0 —— 轻量级、高性能、零 MySQL 依赖的 PHP 社区系统。 

内核:SplitDB 纯 SQLite 分片存储引擎 v2.3 

运行环境:PHP ≥ 8.0(推荐 8.2+)· SQLite ≥ 3.33 · 无 MySQL 依赖 

版本:FLINTHUB_VERSION = V1.0.0(version.php 为单一版本源)

仓库:https://github.com/flinthub-top/FlintHub


一、项目定位

FlintHub(燧石论坛)是一款面向低资源虚拟主机与轻量部署场景的社区论坛程序。它放弃了对 MySQL 的重依赖,改用自研的 SplitDB 纯 SQLite 分片引擎,在普通虚拟主机就能承载可观的社区规模,实测基准:

  • 19 万+ 主题、16 万+ 回复、5 万+ 用户、235 万+ 搜索索引行

核心理念:零外部依赖(纯 PHP + SQLite,无 Composer、无 Redis、无附加 Nginx 模块)、极致轻量(单一前端控制器入口,核心代码精简)、分片存储(季度时序分区 + 哈希分桶)、外置正文(帖子正文剥离数据库,存为 .txt/.bin 文件)、插件驱动(完整钩子系统 + 独立数据库 + 多语言,内置 17 个插件零侵入核心)。


二、核心特性

维度 特性
零 MySQL 依赖 纯 SQLite 分片引擎,无需部署/维护数据库服务,运维成本趋零
分片存储 季度时序分区(每季度一目录)+ 哈希分桶;单库文件极小,读写均衡
零迁移扩容 桶数 32→64→128 平滑升级,新数据路由进新增桶范围,历史数据永不迁移
外置正文 帖子/回复正文剥离 SQLite(.txt 存量 + .bin/.idx 归档),库文件体积极小
极致性能 游客列表页静态 HTML 缓存(命中 3~10ms)、前置缓存、keyset 游标分页、LRU 连接池
插件驱动 钩子系统 + 插件独立数据库 + 多语言自动合并,内置 17 个插件零侵入核心
多语言原生 zh / en / zh_tw 三语,核心键优先合并,缺 key 回退链永不白屏
安全纵深 全量参数化查询、模板自动转义、CSRF(hash_equals 一次性消费)、XSS 白名单净化、文件上传白名单 + MIME 校验、频率限制(Session + IP 双重)、登录/注册 PoW 工作量证明为主 + 图形验证码兜底(防爆破)、IP 限流、审计日志
响应式 & 主题化 原生响应式(一套 HTML 同时适配 PC / 移动端)、--mn-* CSS 变量主题、5 个内置配色 + 夜间模式 + 用户自定义 CSS
PWA 支持 Service Worker 缓存 + manifest,可添加到主屏幕
二级目录部署 全链路 BASE_PATH 适配,可部署在任意子目录

内置功能块:论坛(主题/回复/楼中楼)、版块权限矩阵、博客、搜索(倒排索引 + 中文二元切词)、私信、标签、勋章、每日签到、任务中心、邀请注册、内容审核、通知、公告、友情链接、PWA 等。


三、安装 / 升级

3.1 快速安装

  1. 将本目录内容上传到站点根目录(或子目录,见 3.3)。
  2. 确认环境满足 INSTALL.md 的前置要求(PHP ≥ 8.0、PDO 扩展 + pdo_sqlite、SQLite ≥ 3.33、mbstring、fileinfo、curl、gd/imagick、openssl)。
  3. 配置 Web 服务器伪静态规则(Apache .htaccess 已内置;Nginx 见 nginx-server.conf)。
  4. 浏览器访问 install.php,跟随分步向导:环境检测 → SplitDB 初始化 → 创建管理员。
  5. 安装完成后 protected/.install_done 生成,再次访问 install.php 会被拒绝(防止二次初始化覆盖数据)。

详细步骤、目录权限清单、服务器配置模板见 INSTALL.md。

3.2 升级

  • 升级采用完整包覆盖:下载最新完整包,解压覆盖程序目录(保留 data/、protected/、assets/uploads/ 不动),清理前台页面缓存即可。
  • 覆盖后若提示页面/schema 异常,运行对应 cli/ 迁移或重建脚本(如搜索重建 rebuild_search.php、摘要回填 backfill_excerpts.php)。
  • 升级前建议备份 data/ 与 protected/(关键运行时数据)。
  • 部署到 Apache 需确保 .htaccess 生效;Nginx 需 nginx -t && nginx -s reload。

3.3 二级目录部署

在 config.php 中设置 define('BASE_PATH', '/forum');(如部署在 /forum 子目录),Router / Controller / PageCache / I18n 将全链路自动适配。


四、文档地图

文档 说明
INSTALL.md 安装步骤 + Web 服务器配置规则
CHANGELOG.md 1.0.0 版本更新记录
插件开发规范.md v1.2 插件开发规范(安全红线 / 钩子清单 / 目录结构 / 语言包 / 主题适配 / 核心库访问边界)
LICENSE 开源协议(MIT)

五、只读发布声明

本发行包为只读发布,特此声明:

  1. 按原样提供:本程序以「现状」形式发布(provided "AS IS"),不含任何明示或暗示的保证,包括但不限于适销性、特定用途适用性与不侵权。
  2. 只读包:本目录用于部署安装与参考阅读。作者不承诺提供技术支持或接受代码合并请求,完整责任条款见 LICENSE。
  3. 数据免责:data/(运行时数据)与 protected/(运行产物、会话、限流缓存、日志)应在全新安装时由 install.php 自动重建;发行包本身不携带任何站点运行时数据。
  4. 无担保与无附随责任:使用者对其彻底部署、配置、使用及由此产生的任何直接/间接损失自负责任,作者与维护者不承担任何赔偿责任,完整条款见 LICENSE。
  5. SECURITY / BUG 致谢:欢迎在合规前提下反馈问题,但修复与迭代不构成对本「只读发布声明」的修改。

FlintHub — 用最少的资源,承载最大的社区。 A lightweight PHP community system powered by SplitDB, the sharded SQLite storage engine.

Last edited by flinthub at 2026-09-20 14:17
🧧 Thread Red Packet
+300 points
0 / 10 left
Expired
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
| Views 529 | Replies 26

All Replies (16)

one
🌲Lv.3 初级 ⭐️ 新访客
2026-09-13 16:46:22

来了🤗

来了
#1 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-09-13 17:03:59
源码呢
#2 floor
💡Lv.10 顾问 🌏 正式会员
2026-09-13 17:19:58
来了,学习一下
知识,奉行,知行合一
#3 floor
💡Lv.10 顾问 🌏 正式会员
2026-09-13 17:24:01
许可协议点击不上怎么回事?
知识,奉行,知行合一
#4 floor
🌟Lv.6 资深 🌛 见习会员
2026-09-13 17:43:38
好东西,还以为要等很久,没想到这么快
#5 floor
ai
🌲Lv.3 初级 ⭐️ 新访客
2026-09-13 17:57:26
看看
#6 floor
🌟Lv.6 资深 🌛 见习会员
2026-09-13 20:02:59
学习一下!
#7 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-09-13 23:34:18
来了 不错不错
#8 floor
🌲Lv.3 初级 🌛 见习会员
2026-09-14 12:18:22
安卓版wstoolbox(https://wstoolbox.cn),PHP8.2,除了许可协议点不动,安装之后所有功能
404 Not Found
nginx/1.29.8,需要改nginx配置吗?
#9 floor
👑Lv.11 元老 🌏 正式会员
2026-09-14 12:50:49

ysjy2 发表于: 安卓版wstoolbox(https://wstoolbox.cn),PHP8.2,除了许可协议点不动,安装之后所有功能404 Not Foundnginx/1.29.8,需要改nginx配置吗?

轻量级、高性能、零 MySQL 依赖的PHP社区系统。
#10 floor
🌲Lv.3 初级 🌛 见习会员
2026-09-14 13:17:41
安装协议正常,首页可以进入,所有功能都是404 Not Found
nginx/1.29.8,/storage/emulated/0/Android/data/com.xiaojiangi.wstoolbox/files/WSToolbox/flinthub1.0.0,
nginx配置如何修改:
server {
    listen 1025;
    server_name localhost;
    root /storage/emulated/0/Android/data/com.xiaojiangi.wstoolbox/files/WSToolbox/flinthub1.0.0;
    location / {
        index index.php index.html index.htm;
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /storage/emulated/0/Android/data/com.xiaojiangi.wstoolbox/files/WSToolbox/flinthub1.0.0;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/data/data/com.xiaojiangi.wstoolbox/extensions/tmp/php-fpm.sock;
  fastcgi_connect_timeout 60s;
        fastcgi_send_timeout 180s;
        fastcgi_read_timeout 180s;
  include fastcgi_params;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}
电脑版Windows 10 22H2,PHP8.3直接安装,不使用任何面板,正常, 个人中心  plugin.daily_checkin.checkin_now plugin.daily_checkin.title · plugin.daily_checkin.subtitle,附件图片中的
#11 floor
👑Lv.11 元老 🌏 正式会员
2026-09-14 13:31:03
贴出来的配置,不行,你看一下我做了个txt文档,你复制一下。
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
#12 floor
👑Lv.11 元老 🌏 正式会员
2026-09-14 13:33:28
你到原发布贴那里,重新下载一下,里面的插件配置当时整理的时候有BOM,现在去掉了。
或者你用我下面的升级包覆盖一下也可以。
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
#13 floor
👑Lv.11 元老 🌏 正式会员
2026-09-14 13:34:49
签到那里,你用我提供的升级包覆盖完,到后台开启一下。
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
#14 floor
🌲Lv.3 初级 🌛 见习会员
2026-09-14 13:42:52
flinthub 发表于:签到那里,你用我提供的升级包覆盖完,到后台开启一下。

正常了

#15 floor
🌟Lv.6 资深 🌛 见习会员
2026-09-15 20:46:28
测试了一下,挺好的!大家可以来看看! https://flin.559995.xyz/
#16 floor

Please Log in