Cypht 2.13 介绍与选型指南
Cypht 开源 Webmail 聚合阅读器认知指南:定位、架构、功能、适用边界,与 Roundcube/SnappyMail/SquirrelMail/SOGo/RainLoop 量化对比与选型建议(数据实查于 2026-10-25)。
Cypht 2.13 介绍与选型指南
目标:说清 Cypht 是什么、解决什么问题、架构与功能边界,并与 Roundcube、SnappyMail、SquirrelMail、SOGo、RainLoop 等同类 Webmail 做量化对比,给出可落地的选型建议。本文为认知篇,数据来自官方仓库、官方文档与 Docker Hub 联网溯源(查询日期:2026-10-25),不涉及本地部署实测。
一、环境信息
- 软件:Cypht(cypht-org/cypht)
- 最新稳定版:v2.13.0(2026-10-16 发布,来源:GitHub Releases)
- 语言与运行时:PHP(要求 ≥ 8.1)+ JavaScript,官方 Docker 镜像内置 PHP 8.3 + nginx
- 许可证:LGPL-2.1
- 交付形态:源码包(GitHub Releases / git clone)、官方 Docker 镜像
cypht/cypht(Debian Bookworm 基底)、YunoHost 应用、Tiki 集成 - 官方渠道:官网 https://cypht.org 、仓库 https://github.com/cypht-org/cypht 、镜像 https://hub.docker.com/r/cypht/cypht
二、软件概述
Cypht 是一款开源的 Webmail 聚合阅读器(webmail aggregator)。官方的定位语是「Lightweight Open Source webmail written in PHP and JavaScript」,其设计哲学常被概括为「为你的邮箱做一个新闻订阅器」(a newsreader for your e-mail accounts)——就像 RSS 阅读器聚合多个站点一样,Cypht 把多个 IMAP 邮箱账户聚合到同一个界面里,提供跨账户的统一收件箱。
与传统 Webmail(一个账号一套界面)不同,Cypht 的核心交互是组合视图(combined views):所有账户的未读、全部、已加星、垃圾、已发送、草稿等文件夹被合并成统一列表,用户登录一次即可纵览全部邮箱。除邮件外,Cypht 还内置 RSS/Atom 订阅、GitHub 通知、WordPress 等内容源模块,把「邮件 + 资讯」收敛到一个阅读入口。
项目由 Jason Munro 发起(其此前作品为 Hastymail 系列 Webmail),现由 cypht-org 组织维护,代码托管于 GitHub,迭代节奏活跃:2026 年 7 月至 10 月连续发布 2.11.x → 2.12.x → 2.13.0 多个版本(含多次安全修复专版),另有 1.4.x 旧线维护安全补丁(最新 1.4.9,2026-08)。
三、核心架构
Cypht 是经典的 LEMP/LAMP 形态 PHP Web 应用,架构要点如下(依据仓库 composer.json、config/app.php、docker/Dockerfile 与官方文档,2026-10-25 查询):
| 层 | 实现 |
|---|---|
| Web 入口 | 单入口 index.php + 模块化路由;scripts/config_gen.php 将模块打包生成生产态 site/ 目录(合并 site.css / site.js) |
| 模块体系 | 23+ 个内建模块(core / imap / smtp / jmap / sievefilters / contacts / feeds / calendar / tags / profiles / themes / 2FA 等),由 CYPHT_MODULES 开关按需加载 |
| 邮件协议 | IMAP(收)、SMTP(发)、JMAP、Sieve/ManageSieve(服务端过滤规则);依赖 zbateson/mail-mime-parser 解析 MIME |
| 配置体系 | .env 环境变量 → config/*.php 映射 → 运行时生效;见本站配置详解篇 |
| 会话 | PHP 原生 / 数据库 / Redis / Memcached 四种后端可选 |
| 认证 | 本地数据库账号、IMAP 认证(用邮箱账号直接登录)、LDAP、动态主机登录,支持 OAuth2 集成(Gmail / Outlook / Office 365 / GitHub / WordPress)与 TOTP 两步验证 |
| 用户数据 | 用户设置与附件可落文件目录(默认 /var/lib/hm3/)或数据库 |
| 前端 | Bootstrap 5 + Bootswatch 主题,服务端渲染 + Ajax 增量加载,支持移动端界面与 20+ 语言(含简体中文、繁体中文) |
| 官方镜像 | cypht/cypht:php:8.3-fpm-bookworm 基底,内置 nginx + PHP-FPM(supervisord 托管),环境变量即配置 |
💡 技术拓展:自建 Webmail 常见的「会话存储后端」不止 PHP 默认文件一种——
后端 特点 适用场景 PHP 文件会话 零依赖,默认 单机小规模 数据库 随应用一起备份,可共享 多 Web 节点共享登录态 Redis / Memcached 内存读写快,带过期管理 高并发、会话量大 Cypht 四种均支持(
SESSION_TYPE切换),默认 PHP,官方 Compose 示例用数据库后端。
四、功能特性
依据官方功能页与模块清单(2026-10-25 查询):
- 多账户聚合:同时挂载多个 IMAP 账户,统一「未读 / 全部 / 已标记 / 垃圾 / 已发送 / 草稿 / 稍后读(Snoozed)/ 标签」组合视图;单条列表项可来自任意账户
- 完整邮件能力:读信、写信(含附件分块上传、自动 BCC)、回复/转发、文件夹管理、Sieve 服务端过滤规则编辑、联系人(本地 / LDAP / Gmail / CardDAV)、日历
- 资讯聚合:RSS/Atom 订阅、GitHub 通知、WordPress 内容源,与邮件同一界面混排阅读
- 搜索与效率:跨账户搜索、高级搜索、已存搜索(saved searches)、键盘快捷键、桌面通知、阅读统计(history)
- 安全:两步验证(TOTP,二维码基于 bacon/bacon-qr-code)、登录暴力破解锁定(默认 5 次锁 900 秒)、外部图片追踪阻断、HTML 净化(HTMLPurifier)、PGP 模块(需 ext-gnupg)
- 个性化:20+ 语言、Bootswatch 主题、每页条数/时间窗/列表样式等默认值均可由管理员在配置层预设(
DEFAULT_SETTING_*系列)
五、快速开始(最小可用示例)
以下步骤摘译自官方安装页(https://www.cypht.org/install/ ,2026-10-25 查询),用于 5 分钟本地试玩;生产部署请按本站安装篇/Compose 篇执行。
# 官方文档给出的最小安装主线(来源:cypht.org 安装页)
git clone https://github.com/cypht-org/cypht.git
cd cypht
composer install # 安装 PHP 依赖(要求 PHP ≥ 8.1)
cp .env.example .env # 生成配置文件
php ./scripts/config_gen.php # 生成生产态 site/ 资源
php -S localhost:7777 # PHP 内置服务器起服(仅试用,勿用于生产)
Docker 方式(官方镜像说明页给出的形态,来源:hub.docker.com/r/cypht/cypht):一条 docker run 起 cypht/cypht:<版本号> 或用仓库 docker/docker-compose.yaml 同时拉起 MariaDB,通过环境变量注入数据库与初始管理员账号(AUTH_USERNAME / AUTH_PASSWORD),80 端口对外。
⚠️ 注意:
latest标签可能指向 master 分支构建,官方建议始终使用具体版本号标签(如2.13.0)。
六、适用场景与限制
适用场景:
- 个人/团队多邮箱聚合:一人管理 Gmail、Outlook、自建邮箱等多个账户,要一个统一收件箱与统一未读流
- 「邮件 + 订阅」阅读台:把 RSS、GitHub 通知与邮件放在同一入口按时间线阅读
- 轻量自托管 Webmail:不想要群件全家桶,只要一个快、可定制、模块化的邮件阅读器
- 以邮箱账号即登录的场景:IMAP 认证模式下用户直接用邮箱账号登录 Cypht,无需另行开户
限制与边界(依据官方文档与社区说明):
- Cypht 是客户端/阅读器,不是邮件服务器:不替你收发邮件落地,仍需后端 IMAP/SMTP 服务(自建 Postfix+Dovecot 或用 Gmail 等)
- 无独立移动端 App,移动体验靠响应式 Web UI
- 没有面向第三方的稳定 REST 管理 API(Ajax 接口为内部契约),二次集成靠模块扩展
- 群件能力弱于 SOGo:有日历/联系人模块,但无 ActiveSync,不适合替代 Exchange 类场景
- 账户密码是否可保存受
DEFAULT_SETTING_NO_PASSWORD_SAVE等策略约束,金融/政企高合规场景需逐项评估
七、同类选型对比
对比对象:Roundcube、SnappyMail(RainLoop 后继)、SquirrelMail、SOGo、RainLoop。量化维度均取自 2026-10-25 的 GitHub 仓库/官方站点实查。
| 维度 | Cypht | Roundcube | SnappyMail | SquirrelMail | SOGo | RainLoop |
|---|---|---|---|---|---|---|
| 最新版本(查询日实查) | 2.13.0(2026-10-16) | 1.7.5 | 2.38.2 | 1.4.22(2011 起停更) | 5.12.12 | 1.17.0(2022 停更) |
| GitHub Stars(shields.io 实查) | 1.8k | 7.2k | 1.7k | 无官方活跃 GitHub 仓(SourceForge 托管) | 2.2k(Alinto/sogo) | 4.1k |
| 技术栈 | PHP 8.1+ / JS | PHP / JS | PHP / JS | PHP(老旧代码基) | Objective-C / JS | PHP |
| 核心定位 | 多账户聚合阅读器 | 单账户全功能 Webmail | 现代轻量单账户 Webmail | 古典极简 Webmail | 群件(邮件+日历+联系人) | 轻量 Webmail |
| 多账户统一收件箱 | ✅ 核心卖点 | ❌(需插件) | ❌ | ❌ | ❌ | ❌ |
| 日历/联系人/CardDAV | 有(模块化) | 需插件 | 联系人(CardDAV) | 弱 | ✅ 强(含 ActiveSync) | 联系人 |
| RSS/资讯源 | ✅ 内置 | ❌ | ❌ | ❌ | ❌ | ❌ |
| 许可证 | LGPL-2.1 | GPL-3.0+ | AGPL-3.0 | GPL-2.0 | GPL-2.0 | 社区版为限制性许可(非宽松开源) |
| 维护状态 | 活跃(月均节奏) | 活跃 | 活跃 | 停滞 | 活跃(Alinto 维护) | 已停更,由 SnappyMail 继承 |
| 官方 Docker | ✅ cypht/cypht | ✅ roundcube/roundcubemail | 社区镜像为主 | ❌ | 社区镜像为主 | ❌ |
选型建议:
- 要「一个界面看所有邮箱」、顺带读 RSS/GitHub 通知 → Cypht(本主题,多账户聚合无人替代)
- 要标准单账户 Webmail、重插件生态与企业案例 → Roundcube(见本站《Roundcube 1.7.5 介绍与选型指南》)
- 要现代 UI、部署极简的单账户 Webmail → SnappyMail(见本站《SnappyMail 2.38.2 介绍与选型指南》)
- 要邮件 + 日历 + 联系人 + ActiveSync 的完整群件 → SOGo
- SquirrelMail 与 RainLoop 均已停止演进,不建议用于新部署(存量可参考迁移篇另行评估)
八、参考链接
- Cypht 官网:https://cypht.org
- 安装指南(官方):https://www.cypht.org/install/
- GitHub 仓库:https://github.com/cypht-org/cypht
- Releases(版本与变更):https://github.com/cypht-org/cypht/releases
- 官方 Docker 镜像:https://hub.docker.com/r/cypht/cypht
- Roundcube:https://roundcube.net ;SnappyMail:https://github.com/the-djmaze/snappymail ;SOGo:https://www.sogo.nu ;SquirrelMail:https://www.squirrelmail.org