Galette 1.3.1 介绍与选型指南

非营利组织会员管理软件 Galette 的定位、架构与功能全解,含量化选型对比(CiviCRM/Admidio/FreeScout/Odoo Membership),基于官方来源溯源(查询日期 2026-10-23)。

GaletteCRM会员管理自托管2026/10/23

Galette 1.3.1 介绍与选型指南

目标:面向非营利组织(协会、俱乐部、基金会等)的信息化负责人与自托管运维者,系统介绍开源会员管理软件 Galette 的定位、架构、功能与适用边界,并给出与 CiviCRM、Admidio、FreeScout、Odoo Membership 等同类软件的量化选型对比。本文为认知选型篇,全部数据来自官方站点的联网溯源,未掺入任何本地实验结论;各数据的来源与查询日期见文中标注与文末参考链接。

一、环境信息

本文为 A1 认知篇,不依赖本地部署实验,以下为本文所有事实性数据的来源清单与查询日期(2026-10-23),供读者复核:

  • 官方主站:galette.eu(项目门户、发布公告、下载入口)
  • 官方文档站:doc.galette.eu(安装前置要求、用户手册、变更日志)
  • 官方代码仓库:github.com/galette/galette(Releases 发布记录、源码与许可证)
  • 竞品官方站点:civicrm.org(CiviCRM)、admidio.org 与 github.com/Admidio/admidio(Admidio)、freescout.net(FreeScout)、odoo.com(Odoo)

版本核实结论:截至 2026-10-23 查询,Galette 官方最新稳定版为 1.3.1。官网首页当前公告即为 1.3.1 发布说明("A fresh batch just out of the oven: here is Galette 1.3.1!"),下载徽章指向 galette-1.3.1.tar.bz2;其上一版 1.3.0 于 2026-10-03 发布(官网公告文章路径 /site/post/2026/10/03/galette-1-3-0/),1.3.1 是在 1.3.0 基础上的修复与体验改进版本,不涉及数据库结构变更,且与 1.3 系列插件保持兼容(来源:galette.eu 首页公告与 1.3.1 变更日志链接,查询日期 2026-10-23)。

二、软件概述

Galette 是一款开源的 Web 会员与缴费管理应用(membership and contribution management),专为非营利组织设计——这是官网首页的第一句定位:"Galette is an open source web application for membership and contribution management, specially designed for non-profit organizations"(来源:galette.eu,查询日期 2026-10-23)。它解决的痛点非常聚焦:协会、俱乐部、社团这类组织需要登记会员、管理会费缴纳周期、给会员分组、群发通知、打印会员卡与收据,这些需求用通用 CRM 太重、用表格软件又太散,Galette 把这一套流程做成了一个可以自托管的单站点 Web 应用。

项目由法国开发者 Johan Cwiklinski 于 2003 年发起并维护至今(源码文件版权头标注 "Copyright © 2003-2026 The Galette Team"),采用 GPL-3.0-or-later 许可证(来源:GitHub 仓库 LICENSE 与源码 SPDX 头标注,查询日期 2026-10-23)。官网强调其属性为"自由软件、社区驱动、完全免费"("free software, community-driven, and free of charge"),没有功能阉割的付费版,商业模式只有可选的捐助。

几个关键的身份数据:

维度事实来源(查询日期 2026-10-23)
当前稳定版1.3.1(2026 年 10 月发布)galette.eu 首页公告
上一大版本1.3.0(2026-10-03,一年开发周期、650+ 提交)galette.eu 发布公告
许可证GPL-3.0-or-laterGitHub 仓库 LICENSE
GitHub 星数73shields.io 徽章接口(github.com/galette/galette)
技术栈PHP 8.3+,支持 MariaDB/MySQL/PostgreSQLdoc.galette.eu 安装前置页
界面语言20+ 种语言翻译(含简繁中文),Weblate 平台协作翻译galette.eu 首页翻译状态徽章
官方插件全部插件已同步适配 1.3 系列galette.eu 1.3.0/1.3.1 公告

💡 说明:GitHub 73 星是一个很小的数字,但这符合此类"垂直领域、欧洲社区、非开发者工具"开源项目的普遍传播特征——它的真实用户群主要是法语区与欧洲的协会管理员,而非在 GitHub 上围观代码的开发者群体。评估这类项目时,发布节奏与文档完整度比星数更能说明健康度:Galette 在 2026 年保持着稳定的版本节奏(1.3.0 一年 650+ 提交,1.3.1 一个月内跟进),官方文档站 doc.galette.eu 结构完整,这两点对长期自托管用户更为关键。

三、核心架构

Galette 是典型的 LAMP/LAPP 形态 PHP Web 应用:一个 Web 服务器(Apache/Nginx 均可,官方文档以 Apache 为例)+ PHP-FPM 或 mod_php + 一个关系型数据库。本节依据官方前置要求文档与安装包内公开的源码结构描述其分层(来源:doc.galette.eu/en/master/installation/prerequis.html 与 galette-1.3.1 安装包目录结构,查询日期 2026-10-23)。

1. 运行时与依赖层。官方要求 PHP 8.3 或更高(1.3.0 起将最低版本从 8.2 提升到 8.3),并强制要求以下 PHP 扩展:ctype、dom、fileinfo、filter、gd、gettext、iconv、intl、mbstring、session,以及 PDO 配 pdo_mysql 或 pdo_pgsql;curl 与 openssl 为推荐项(curl 用于"缴费后置脚本"等出站 HTTP 调用)。数据库三选一:MariaDB 10.5+ / MySQL 8.0+ / PostgreSQL 13+。

2. 应用框架层。安装包内可见 Galette 使用 Slim 4 作为 HTTP 路由内核(includes/routes/ 下按成员、缴费、群组、管理等域拆分路由文件),Twig 作为模板引擎,Symfony Console 作为命令行内核(安装包 bin/console 提供 galette:* 命令族),依赖管理使用 Composer(vendor/ 目录随 tarball 一起分发,因此部署不需要在服务器上装 Composer)。

3. 数据层。所有业务数据存于数据库表中,默认表前缀 galette_(如 galette_adherents 会员表、galette_cotisations 缴费表、galette_groups 群组表)。数据库连接参数集中在 config/config.inc.php 一个文件里(数据库类型、主机、端口、账号、库名、表前缀共 7 个常量),配置文件缺失时应用会自动跳转到安装器——这也是它"开箱即装"体验的基础。

4. 配置分层。Galette 的配置分三层,这一设计在 1.3.0 中明确化:

层载体生效时机典型内容
数据库连接config/config.inc.php安装器生成后不再变动数据库类型/主机/账号/前缀
行为覆写config/behavior.inc.php(可选)数据库连接之前调试开关、运行模式、日志级别、特性开关
实例偏好数据库 preferences 表后台随时可改实例名称、邮件参数、默认语言等

💡 技术拓展:自托管 Web 应用的"配置放哪"有三种常见做法——(1) 全部入数据库(如 WordPress),改配置不用碰文件但数据库不可用时连站点都起不来;(2) 全部入文件(如早期 phpBB),便于版本化管理但每次改动要登录服务器;(3) 分层混合(Galette 的做法):把"数据库不可用也必须生效"的连接参数放文件,把"随时会改"的运营参数放数据库,另留一个可选的文件层做强制覆写。Galette 1.3.0 进一步把实例 URI、会话时长等原先只能在文件里设置的项迁入了后台的"高级配置"页,文件层只保留覆写能力——三层各司其职。本方案实际采用的是第 (3) 种分层混合。

5. 插件与扩展层。核心之外的扩展走插件机制:插件放在 plugins/ 目录下,1.3.0 起每个插件有独立的数据库版本号并可独立升级,后台插件页会列出已启用、已禁用、未安装与待更新四类状态。官方维护的插件涵盖 Maps(会员地图)、Payments(支付网关)、Events(活动管理)等,1.3 系列发布时全部插件同步更新(来源:galette.eu 1.3.0 公告"all plugins have been updated")。

四、功能特性

以下特性清单来自官网公告与文档站的公开描述(来源:galette.eu 首页及 1.3.0/1.3.1 发布公告,查询日期 2026-10-23),按非营利组织的使用场景归类:

会员管理:会员档案支持自定义动态字段(文本/选择/日期/文件,1.3.0 起支持可重复字段)、照片头像、会员卡 PDF 导出(1.3.0 起自适应会员卡为默认模板);会员可以有多个群组身份,群组内再区分"成员"与"管理员"两种角色;1.3.1 把会员-群组关系从弹窗改为表格化编辑,并支持 CSV 导入/导出会员的群组关系。

缴费与贡献管理:会费类型、缴费周期(含闰年与起算日修复)、收据与发票 PDF 生成、缴费类型带描述(1.3.1)、CSV 导出;支持"缴费后置脚本"(post contribution script)在收到缴费后回调外部 HTTP 接口。

群发邮件(Mailings):面向筛选出的会员群发 HTML/文本邮件,1.3.0 起支持分批发送(可配置两封信之间的延迟、每小时/每天配额),发送走队列,可从界面、cron 脚本或命令行恢复处理;发送历史存档。

账户安全(1.3.0 重点强化):实验性的两步验证(TOTP,配 FreeOTP/Aegis/KeePassXC,带恢复码,管理员可重置成员的第二因子);按账号与按来源 IP 计数的登录失败锁定;密码找回与自助注册的限流;CSRF 防护基于 HTTP 头、会话 Cookie 带 SameSite 标记、富文本内容入库前消毒。

自助服务:会员自助注册(含验证码)、自助修改资料、密码自助找回、公开页面(公开成员名录等)可由插件扩展。

导入导出:CSV 导入导出(1.3.0 起动态字段最多 10 个参与导入,1.3.1 起导出含动态字段与群组)、文档列表带筛选与分页。

可运维性:命令行工具族(安装、插件管理、模板缓存、翻译编译、队列处理等,详见专栏 CLI 篇)、galette:checks 环境自检命令、SQL 日志与调试日志分级、1.3.0 起安装/更新由锁文件保护(ENABLE_INSTALL 机制,装完自动上锁)。

无障碍与界面:1.3.0 做了一轮系统性无障碍改造(对比度、页面标题、键盘导航、自动化回归检查),支持深色模式。

五、快速开始(最小可用路径)

本节给出从零到可用站点的最短官方路径概览(仅引用官方文档与下载入口,供评估"装起来有多重";逐步实测的完整安装过程见本专栏安装篇)。官方推荐部署方式是 tarball + Web 安装器:

  1. 准备环境:一台带 Apache 的 PHP 8.3+ 主机,装齐上文列出的 PHP 扩展,备好 MariaDB 10.5+/MySQL 8.0+/PostgreSQL 13+ 的一个空库与专用账号(来源:doc.galette.eu 前置要求页)。
  2. 下载解压:从官网下载 galette-1.3.1.tar.bz2(约 13 MB),解压到 Web 根目录,应用代码位于解压出的 galette/ 子目录(来源:galette.eu 下载徽章与 tarball 结构)。
  3. 配置 Web 根:把虚拟主机 DocumentRoot 指向 galette/webroot/(安装包自带该目录的 URL 重写规则)。
  4. 跑 Web 安装器:浏览器打开站点,安装器自动接管,依次完成环境检查 → 数据库类型选择 → 连接与权限验证 → 建表 → 超级管理员设置 → 初始化,全程约 6 步向导页;安装完成后安装器自动写好 config/config.inc.php 并上锁禁用。
  5. 登录后台:用安装时设置的超管账号进入 Dashboard,即可开始录入会员。

💡 说明:Galette 同样提供命令行安装命令 galette:install(Symfony Console 实现),适合批量部署或无浏览器环境;1.3.0 起安装与更新都由锁文件保护,避免装完后安装器暴露在公网——这两点是它相对同类 PHP 老牌项目的现代化之处。

六、适用场景与限制

适合的场景(依据其功能集与官方定位推断,来源同上):

  • 中小型协会/俱乐部/校友会/兴趣社团的会员登记、会费收缴与续期提醒;
  • 需要按群组(部门、年龄组、活动组)管理成员并分组群发通知的组织;
  • 预算为零或数据必须自持(数据不出本组织服务器)的非营利机构;
  • 法语/多语言环境的欧洲协会(项目原生多语言,法语社区最活跃)。

明确的限制(来源标注同上):

  • 单一实例、单组织定位:Galette 面向"一个组织一个站点",没有多租户能力;一个机构旗下多个协会需要部署多个实例。
  • 不是捐款/众筹平台:缴费管理围绕会员费与收据,1.3.0 移除了 QMAIL 与 Gmail 两种邮件方式;在线支付、捐赠收据(税务抵扣类)需要配合支付插件或外部系统。
  • 功能深度不如专业 CRM:没有捐款人关系管道、活动票务、个案管理这类 CiviCRM 级别的模块深度;复杂需求靠插件或外接系统。
  • PHP 8.3 起步:老系统(Debian 11 的 PHP 7.4、Ubuntu 20.04 的 PHP 7.4)无法直装,需要第三方仓库(如 sury.org)或升级发行版;官方还明确列出不支持的两个免费虚拟主机(Free、Olympe Networks)。
  • 浏览器必须启用 JavaScript:官方明确要求,无 JS 环境不可用。

七、同类选型对比

非营利组织的"会员/成员管理"赛道上,Galette 的同类可选包括 CiviCRM(专业非营利 CRM)、Admidio(同为 PHP 会员管理)、FreeScout(帮助台/邮件工单,常被误列入对比)、Odoo Membership(ERP 中的会员模块)。下表为量化对比(Galette、CiviCRM、Admidio 数据来源为各方官网与仓库,查询日期 2026-10-23;FreeScout 与 Odoo 为形态性描述,未单独取证星数):

维度Galette 1.3.1CiviCRM 6.15AdmidioFreeScoutOdoo Membership
产品定位会员与缴费管理 Web 应用全功能非营利 CRM(捐款/个案/活动/通讯)协会会员与活动管理邮件帮助台/工单系统ERP 内的会员管理模块
技术栈PHP 8.3+(Slim 4 + Twig)PHP 8.2+,需挂接 CMSPHP 8.1+,自带前端PHP/LaravelPython/Odoo 框架
数据库MariaDB 10.5+/MySQL 8.0+/PostgreSQL 13+MySQL/MariaDBMySQL/MariaDBMySQL/MariaDBPostgreSQL
许可证GPL-3.0-or-laterAGPL-3.0GPL-2.0-or-laterAGPL-3.0LGPL-3.0(社区版)
GitHub 星数73(主开发不在 GitHub 星榜)484(未取证)(属 odoo/odoo 主仓)
部署体量轻:一个 vhost + 一库重:CMS(WP/Drupal/Joomla)+ CiviCRM 双件套轻:一个 vhost + 一库轻重:整套 Odoo
会员费/缴费周期管理核心功能,原生核心功能(CiviMember)有无此概念有(Odoo 模块)
捐款/募捐无(需插件/外接)核心功能无无有(配合 Odoo 财务)
邮件群发原生(1.3.0 起分批队列)核心功能(CiviMail)基础正是其主业(收发工单)有(Odoo Marketing)
自助注册/会员自助原生有(需配置 Profile)原生不适用有(门户)
多语言/中文支持20+ 语言翻译多语言多语言多语言多语言
适合组织规模数十到数千会员的小中型协会数百到数百万联系人的中大型机构小中型协会需要邮件客服的团队已用 Odoo 的组织

选型解读:

  • 选 Galette:需求就是"管会员、收会费、分组、群发",想要一个不依赖 CMS、装完就能用的轻量自托管系统,且组织规模在数千会员以内。它是本组对比里"单一职责做得最完整、部署最轻"的一个。
  • 选 CiviCRM:组织需要捐款管理、募捐活动、个案跟踪、复杂报表,或已经是 WordPress/Drupal 重度用户。它的功能深度和 14,000+ 组织的生态(官网数据)无可替代,代价是必须连同 CMS 一起部署运维,学习曲线明显更陡。
  • 选 Admidio:需求与 Galette 高度重叠(会员 + 活动 + 群组),社区更偏德语区;两者可按界面偏好与插件生态二选一。
  • 选 FreeScout:如果"会员管理"的真实需求其实是"会员来信要有人回复",那它是对的——但它是帮助台系统,没有会员费、缴费周期、会员卡这些概念,与 Galette 不构成替代关系,放进本表是为了防止选型错位。
  • 选 Odoo Membership:组织同时在用 Odoo 管财务/库存/网站,会员管理只是其中一环;为会员管理单独部署整套 Odoo 不划算。

八、参考链接

本文数据查询日期均为 2026-10-23;版本与星数随时间变化,引用时请以当日实查为准。