Friendica 2026.05 介绍与选型指南
Friendica 2026.05 联邦社交平台的定位、架构、多协议互联能力与量化选型评估(对比 Mastodon/diaspora*/Hubzilla,检索日期 2026-11-02)
Friendica 介绍与选型指南
目标:面向「自托管联邦社交网络(Fediverse 全协议网关)」需求的选型评估,系统性梳理 Friendica 的定位、架构、功能、量化对比与适用边界。本文全部版本、星数、发布节奏与能力清单均来自官方公开渠道,检索日期统一为 2026-11-02;部署与配置实操见本专栏《Friendica Docker Compose 部署指南》《Friendica 2026.05 配置参数详解》《Friendica 2026.05 常用 CLI 命令与工具详解》。
一、环境信息
本文为选型评估篇,不依赖特定实验环境;全部事实性数据来自以下官方来源(检索日期均为 2026-11-02):
| 信息项 | 来源 | 说明 |
|---|---|---|
| 最新稳定版本与发布说明 | https://github.com/friendica/friendica/releases (releases.atom 订阅源) | 版本号、发布日期、变更清单 |
| 社区活跃度(Star/Fork/Issues) | https://img.shields.io/github/stars/friendica/friendica.json (shields.io 聚合 GitHub 官方数据)+ 仓库页 | 实测 stars 1699、forks 384、open issues 1385 |
| 产品定位与互联能力 | https://friendi.ca/about/ | 联邦互操作与跨平台桥接清单 |
| 系统要求 | https://friendi.ca/requirements/ | Web 服务器、PHP、数据库、内存等硬性门槛 |
| 许可与仓库元数据 | https://github.com/friendica/friendica | AGPL-3.0、created 2011-11-06、pushed 2026-11-01 |
- 组件:Friendica(GitHub 仓库 friendica/friendica,官网 friendi.ca)
- 最新稳定版:2026.05 "Blutwurz"(发行号 2026.05-1,发布于 2026-05-21,安全更新版本)
- 开源许可:AGPL-3.0
- 主要语言:PHP(Web 应用 + CLI 工具 + 后台守护进程同一代码库)
二、软件概述
2.1 项目定位
Friendica 是一个自托管的联邦社交网络平台:你在自己的服务器上运行一个完整的社交网络节点,节点内是传统的「关注/发帖/评论/私信」社区,节点外通过标准协议接入整个联邦宇宙(Fediverse)。与同类项目相比,Friendica 的定位可以概括为两点:
- 全协议网关:它不只实现 ActivityPub,还同时讲 Diaspora* 协议、原生支持邮件(IMAP/SMTP)收发,并可桥接 Bluesky、Tumblr、GNU Social 等平台——官方 About 页明确列出与 Diaspora、Hubzilla 同联邦互操作,与 Bluesky/Tumblr/GNU Social/Mail 双向互通,对 Blogger/WordPress/Buffer 等支持单向发布。一个 Friendica 账号可以同时是 Fediverse 账号、Diaspora* 账号和邮件列表用户。
- 个人社交家庭服务器(social home server):产品形态对标「把 Facebook 式的时间线、相册、事件、论坛搬回自家服务器」,而非微博客(Mastodon)或图片社区(PixelFed)的单一内容赛道。
项目仓库创建于 2011-11-06(开源托管时间),是联邦宇宙中历史最悠久的项目之一;其早期的 DFRN 原生协议在 2026.05 版本中完成了历史使命——官方 CHANGELOG 明确「Removed the legacy DFRN transport layer, DFRN is now always using the Diaspora* transport layer」(移除遗留 DFRN 传输层,DFRN 一律改走 Diaspora* 传输层),协议栈收敛到 ActivityPub + Diaspora* 两条主干。
2.2 版本节奏与社区活跃度
版本号采用日期式(年.月)。截至检索日期 2026-11-02,官方 releases.atom 实测的近年发布记录如下(节选):
| 版本 | 发布日期 | 类型 |
|---|---|---|
| 2026.05 / 2026.05-1 | 2026-05-20 / 2026-05-21 | 稳定版 + 安全补丁(Doyensec/Mastodon 通报的安全修复) |
| 2026.01 | 2026-01-27 | 稳定版 |
| 2024.12 / 2024.12-1 | 2024-12-31 / 2025-01-01 | 稳定版 + 补丁 |
| 2024.08 | 2024-08-17 | 稳定版 |
| 2024.03 | 2024-03-25 | 稳定版 |
| 2023.12 / 2023.05 / 2023.04-1 | 2023 年 | 稳定版序列 |
解读:节奏为每年 2–4 个日期版本 + 按需 -N 补丁,安全类补丁(2026.05-1)在正式版发布次日即出,响应很快;仓库 pushed 时间 2026-11-01(检索当日为日更活跃状态)。社区规模上 stars 1699、forks 384、open issues 1385——星数在 Fediverse 项目中明显低于 Mastodon(50k)与 diaspora*(14k),但 open issues 数量与 14 年历史代码库的体量相称,属于「小而长寿、持续维护」的项目形态,选型时应把「协议覆盖广度」而非「星数热度」作为主要权重。
2.3 技术栈与开源许可
| 层 | 技术选型 | 说明(来源:friendi.ca/requirements,检索日期 2026-11-02) |
|---|---|---|
| 运行时 | PHP 7.4+(推荐 PHP 8,支持 8.5) | 2026.05 是最后一个支持 PHP < 8.2 的版本,后续版本将抬升门槛 |
| PHP 扩展 | Curl、GD、GMP、PDO、mbstring、Intl、MySQLi、hash、xml、zip、OpenSSL、POSIX | 官方逐项列出;CLI 需 register_argc_argv=true |
| Web 服务器 | Apache(mod_rewrite)或 nginx / lighttpd(官方提供 rewrite 规则示例) | — |
| 数据库 | MySQL 兼容库,推荐 MariaDB(InnoDB + Barracuda 文件格式) | 全部业务数据与配置落关系库 |
| 缓存 | 本地 APCu;可选 Redis(会话/分布式缓存/锁) | 官方 Docker 配置内置 00apcu/01redis 两份配置片段 |
| 任务处理 | cron + 内置 daemon 守护进程(worker 队列消费) | 官方要求部署 cron 或常驻 worker |
| 前端主题 | frio(默认)、vier 等 | 2026.05 发布说明重点提及 frio UI 改进 |
| 许可 | AGPL-3.0 | 修改并对外提供服务需履行源码开放义务 |
💡 技术拓展:Friendica 的 PHP 环境选型上有两个常见分歧点——
选项 特点 适用场景 PHP 8.2/8.3(推荐) 官方主推区间,性能与兼容性平衡 生产部署 PHP 8.4/8.5 官方声明支持的最新线 想跟进发行包基线的用户 PHP 7.4 最低支持线,2026.05 为最后支持版本 存量老环境过渡,不建议新部署 本文部署篇实测采用发行包内置的 PHP 8.4 线;新部署直接跟随官方镜像即可,无需自行编译 PHP。
三、核心架构
3.1 整体架构与进程形态
Friendica 是典型的 LAMP 单体 PHP 应用 + 后台守护进程架构,官方推荐的容器化编排由三类角色构成(官方文档 example compose 与应用发行包一致):
浏览器/客户端(frio 主题 Web UI / Mobile API)
│ HTTP(S)
▼
┌────────────────────────── 编排栈 ──────────────────────────┐
│ app(Apache + PHP,Web/API/管理面板) │
│ cron/daemon(/cron.sh → console daemon start -f, │
│ 消费 workerqueue:联邦投递、抓取、通知、清理) │
│ 数据库(MariaDB,帖子/联系人/配置/队列全落库) │
│ (可选)Redis:会话、分布式缓存、锁 │
└────────────────────────────────────────────────────────────┘
│ ActivityPub(HTTP Signature)/ Diaspora* 传输 / WebFinger
▼
联邦宇宙(Mastodon / diaspora* / Hubzilla / PeerTube …)
+ 桥接:Bluesky(ATproto) / Tumblr / GNU Social / Email(IMAP-SMTP)
与 Mastodon(Rails + Sidekiq + Redis 强依赖)不同,Friendica 的队列状态直接存数据库(workerqueue 表),Redis 只是可选加速项;daemon 默认每 5 分钟唤醒一轮任务,进程模型简单,单实例部署门槛低。
3.2 数据存储层
- 关系库为唯一事实源:用户(user)、联系人(contact)、联邦对端档案(apcontact,主键为 Actor URL,记录 followers/following/inbox/sharedinbox/公钥)、帖子(post / post-content / post-user / post-thread 四表拆分,正文在 post-content)、异步任务(workerqueue)、系统配置(config 表,值为 PHP 序列化字符串)全部在 MariaDB 内。
- 文件层:头像与附件默认存文件系统(
/var/www/data),发行包内置 Database 存储后端可选(官方 storage 模块支持 Filesystem / Database 两种,实测默认启用 Database)。 - 配置三层叠加:静态默认值(defaults.config.php)→ 本地配置文件(config/local.config.php 及同目录分片)→ 数据库 config 表(管理面板与 CLI 写入),后者优先级最高且会覆盖文件配置——这是理解本专栏配置篇的关键主线。
3.3 联邦协议层
💡 技术拓展:Fediverse 历史上存在多条实例间互通协议,Friendica 是目前覆盖最全的——
协议 原理/特点 现状 ActivityPub(W3C 标准) Actor/Inbox/Outbox 模型 + HTTP Signature 签名 事实标准,Mastodon/PixelFed/PeerTube/Lemmy 均实现;Friendica 主通道 Diaspora* 协议 XML 签名信封,diaspora*/Hubzilla 生态原生 Friendica 2026.05 起承载原 DFRN 语义(legacy DFRN 传输层已移除) DFRN Friendica 原生旧协议 已收敛为「应用层语义 + Diaspora* 传输」,不再独立成线 OStatus/Salmon 更早期的 WebSub 系协议 基本退役,仅存量节点可见 选型含义:Friendica 同时站在 ActivityPub 与 Diaspora* 两条主干上,是异构联邦节点之间互通的「翻译器」;只连 Mastodon 生态则单 AP 协议即可。
配套机制:账号发现走 WebFinger(acct:user@domain),实例元数据走 NodeInfo/desc;2026.05 的 Actor URL 直接挂在 /profile/<昵称>,收件箱为 /inbox/<昵称>。跨平台桥接(Bluesky/Tumblr/邮件等)由官方 addon 体系实现,2026.05 发布说明同时提到 Bridgy Fed 与 ATproto 支持改进。
3.4 异步任务与投递模型
出站活动(Follow/Create/Announce/私钥签名的各类请求)与入站抓取、媒体下载、通知聚合全部进入 workerqueue 表,由 daemon 按任务类型与优先级消费;投递失败自动重试(next_try 退避)。这决定了部署时 daemon/cron 角色是必选角色——只起 Web 不起 worker 的实例表现为「能发不能到」:本地一切正常、对端永远收不到关注与帖子。
四、功能特性
4.1 内容形态与社交能力
- 时间线:个人关注流、社区流、标签流;帖子支持公开/仅关注者/私信/受限名单等分级可见;
- 内容类型:文字、图片相册、链接预览、投票、事件(日历)、论坛帖;
- 互动:点赞/收藏/转发(Announce)、评论线程、私信(跨联邦 DM);
- 群组与论坛:Friendica 的论坛(Forum)能力支持邮件列表式社区——成员发帖全员进收件箱,且可通过 Mail addon 让成员纯用电子邮件参与联邦讨论,这是 Fediverse 项目中的独有能力。
4.2 跨平台聚合(About 页官方清单,2026-11-02)
| 方向 | 平台 | 能力 |
|---|---|---|
| 双向 | Bluesky、Tumblr、GNU Social、Email(IMAP/SMTP) | 账号级桥接,收发互通 |
| 单向发布 | Blogger、WordPress、Buffer 等 | 时间线内容外发 |
| 同联邦互操作 | Diaspora*、Hubzilla 及全部 ActivityPub 平台 | 互关、转发、评论 |
4.3 管理、主题与扩展
- 管理面板:站点参数、注册策略、 addon 开关、用户/联系人/队列管理、联邦诊断;
- 主题:frio(默认,2026.05 重点打磨)与 vier 等;
- 扩展体系:addon(hook)插件机制,2026.05 版完成了 hook 系统重构并引入 AddonHelper 类,第三方扩展开发接口显著改善;
- CLI:
bin/console内置用户/配置/联系人/中继/缓存/数据库结构等命令组(详见本专栏 CLI 命令篇)。
五、快速开始(最小可用路径)
本节为官方文档路径的浓缩,帮助读者建立整体认知;完整逐步部署、回显与排障见本专栏《Friendica Docker Compose 部署指南》。
5.1 官方硬性门槛(requirements 页,2026-11-02)
- 内存 ≥ 2GB(官方明确:1GB 有节点掉线报告);
- PHP 7.4+,推荐 PHP 8,扩展清单见 2.3 表,CLI 需
register_argc_argv=true; - MySQL 兼容数据库,推荐 MariaDB(InnoDB + Barracuda);
- Web 服务器 Apache(mod_rewrite)或 nginx/lighttpd(官方示例规则);
- cron 或常驻 worker(没有它联邦投递不工作,见 3.4);
- 建议使用顶级域名(路径前缀不行):官方明确路径前缀部署无法与 Diaspora/GNU Social 联邦——因为对端协议按「域名=节点」发现身份。
5.2 两条官方安装路径
| 路径 | 适用 | 关键步骤(官方文档,检索日期 2026-11-02) |
|---|---|---|
| 容器编排(推荐) | 生产/快速验证 | 官方 friendica 发行包 + 编排:db(MariaDB)+ app(Apache/PHP)+ cron(daemon)三角色,环境变量注入数据库凭据与站点 URL → 启动自动建库迁移 → CLI 建管理员 |
| 裸机 LAMP | 已有 PHP 运维体系/共享主机 | 源码部署到文档根 → 装 PHP 扩展 → 建库 → Web 安装向导或 CLI 初始化 → 配置 cron/daemon → 管理面板调参 |
5.3 初始化要点(两路径通用)
- 站点 URL 一旦确定不可随意改:所有 Actor/收件箱 URL 由
system.url派生并写入历史数据,换地址必须走官方bin/console relocate迁移工具(配置篇/命令篇展开); - 管理员与首个账号:官方不提供默认账号,容器形态用
bin/console user add创建; - 联邦验证:部署完成后对另一节点发起关注、确认双向 rel=3(互相关注)与帖子互达,才算闭环(部署篇含双节点实测)。
六、适用场景与限制
6.1 适用场景
- 个人/家庭社交主页:一个域名承载时间线、相册、事件、论坛,同时接入 Fediverse 与 Bluesky/邮件;
- 混合联邦社区运营:需要同时服务 ActivityPub 用户与 diaspora*/Hubzilla 老用户的社区(Friendica 是唯一双主干网关);
- 邮件即客户端的讨论组:论坛 + Mail addon,成员用邮箱参与、存档在自家节点;
- 从中心化平台迁出:跨平台桥接与导入能力支持「先并存、再搬家」的低风险迁移;
- PHP 共享主机环境:无需 Redis/队列中间件的强依赖,资源模型对传统 LAMP 运维友好。
6.2 已知限制
- 资源下限明确:2GB 内存是官方门槛而非建议值,轻量小主机(512MB–1GB)不适合;
- 路径前缀部署断联邦:
https://example.com/friendica/形态无法与 Diaspora/GNU Social 互通(官方 requirements 明示),必须域名根路径; - 星数与生态热度低于 Mastodon:第三方客户端、教程与托管服务的数量级差距明显,UI 与移动端体验依赖 frio 主题与桥接 addon,开箱精致度不及 Mastodon/PixelFed;
- PHP 支持窗口正在收紧:2026.05 为最后支持 PHP < 8.2 的版本,老环境需规划升级;
- 配置系统分层复杂:文件配置与数据库配置存在覆盖关系,误配置排查成本高(本专栏配置篇/命令篇的排障实录即为此准备)。
七、同类选型对比
7.1 Fediverse 主流自托管平台量化对比(检索日期 2026-11-02)
| 维度 | Friendica 2026.05 | Mastodon | diaspora* | Hubzilla | PixelFed |
|---|---|---|---|---|---|
| GitHub stars | 1699 | 50k | 14k | 官方仓库托管于 Framagit,无 GitHub 星数口径 | 7.1k |
| 许可 | AGPL-3.0 | AGPL-3.0 | AGPL-3.0 | MIT | AGPL-3.0-only |
| 技术栈 | PHP + MariaDB | Ruby/Rails + PG + Redis | Ruby + PG | PHP + MySQL 系 | PHP/Laravel + MySQL/PG + Redis |
| 内容赛道 | 综合社交 + 论坛 + 邮件桥 | 微博客 | 微博客/隐私社交 | 社交 + 云盘 + 论坛(Strongbox) | 图片社交 |
| 联邦协议 | ActivityPub + Diaspora*(双主干)+ 多平台桥接 | ActivityPub | Diaspora* 协议 | 自有 Zap 协议 + AP | ActivityPub |
| 队列依赖 | 数据库 workerqueue(无中间件) | Redis + Sidekiq 强依赖 | 弱 | 数据库 | Redis + Horizon 强依赖 |
| 最低内存 | 2GB(官方明示) | 约 2GB 级 | 较低 | 较低 | 2GB+ |
解读:星数维度 Friendica 垫底,但它是表中唯一「双协议主干 + 邮件/Bluesky 桥接」的全网关;技术栈维度与 PixelFed/Hubzilla 同属 PHP 系,运维体系可复用;与 Mastodon 的取舍本质是「综合社交 + 协议广度」对「微博客 + 生态热度」。站内量化对比另见 《Mastodon 4.7.3 介绍与选型指南》 与 《PixelFed 0.15.2 介绍与选型指南》;diaspora* 与 Hubzilla 的站内对比见 《diaspora* 介绍与选型指南》。
7.2 「如果…则…」选型建议
- 如果你的社区同时有 Mastodon 用户和 diaspora*/Hubzilla 老用户 → Friendica(双协议网关,唯一解);
- 如果你想用邮件参与联邦讨论或运营邮件列表式论坛 → Friendica(Mail addon,独有能力);
- 如果你只要微博客、要最大客户端生态 → Mastodon;
- 如果你只要图片社交 → PixelFed;
- 如果你的运维栈是 PHP + MySQL 且想要网盘/社交一体 → 评估 Hubzilla;
- 如果预算只有 1GB 内存 → 全部 Fediverse 综合平台都不合适,考虑轻量 ActivityPub 服务端(如 GoToSocial)+ 其他托管。
7.3 版本兼容矩阵小结(量化)
- 数据库支持:MySQL 兼容库全量,官方推荐 MariaDB(InnoDB + Barracuda);
- PHP 支持线:7.4–8.5,2026.05 为 7.4/8.0/8.1 的终点版本;
- 联邦互操作实测面:与 Mastodon(AP)、diaspora*(Diaspora* 传输)互关互通为官方承诺能力;
- 发行包形态:官方 friendica Docker 发行包(app + cron 同包双角色)为第一推荐部署形态,见本专栏部署篇。
八、参考链接
- 官网:https://friendi.ca/
- About(能力清单):https://friendi.ca/about/
- Requirements(系统要求):https://friendi.ca/requirements/
- 源码仓库:https://github.com/friendica/friendica
- Releases(2026.05):https://github.com/friendica/friendica/releases
- 官方 Docker 发行包:https://hub.docker.com/r/friendica/friendica
- ActivityPub 规范:https://www.w3.org/TR/activitypub/
- 本专栏相关文档:《Friendica Docker Compose 部署指南》《Friendica 2026.05 配置参数详解》《Friendica 2026.05 常用 CLI 命令与工具详解》