MediaWiki 容易被低估,因为它面向用户的隐喻已经很旧:编辑一个页面,链接到另一个页面,让历史记录保存发生过的事。到了 2026 年,它的治理信号落在更少怀旧色彩的位置。MediaWiki 持续运转,是因为它已经学会把一个规模很大、扩展很多、覆盖多语言的发布系统,拆成一组明确边界:哪些内容属于 core,哪些内容属于扩展,哪些变更本周能进入 Wikimedia 生产环境,哪些内容归入 LTS 分支,哪些技术决策需要记录流程,而不能只靠走廊里的共识完成。[1][2][3][4][6]
这让 MediaWiki 成为一个适合内部平台团队观察的开源案例。这个项目的含义早已超出“Wikipedia 背后的软件”。Wikimedia Foundation 将其描述为免费开源 wiki 软件,并指出它在 Wikimedia 之外也被使用,包括 NASA、SFMOMA 等机构。[1] 对运营者来说,真正的启发并非每家公司都该安装一个 wiki,而是一个长寿平台只有把可扩展性、发布支持、生产部署与决策权合在同一套运行系统中,才会持续存在。
图片背景:封面是 2026 年 3 月 MediaWiki Users and Developers Conference 的真实会议照片,既非图表、标志,也非生成图像。[8] 它放在这里,是因为本文讨论的是维护者、扩展作者、站点运营者、发布工程师与机构用户共同实践的治理,他们需要让同一个共享平台保持一致。
信号
最强的信号是发布列车。Wikimedia 的部署文档写明,MediaWiki 通过 Deployment Train 每周部署,其他服务则按照各自节奏发布。[4] 列车流程页面把这趟列车界定为 Release Engineering 的每周流程,用于把 WMF 最新 alpha 版 MediaWiki 推入生产环境,并通过分组方式在测试 wiki 与生产 wiki 之间逐步铺开。[4][5] 这超过了日历纪律。它公开呈现出一个平台如何在持续编辑、扩展、皮肤、数据库迁移和运维风险同时存在的情况下,避免让每一次合并都变成一次特制的部署事件。
发布列车也解释了 MediaWiki 公开 tarball 生命周期为何不能孤立解读。版本生命周期页面写明,MediaWiki 面向 Wikimedia 站点采用持续集成开发模型,同时也按约六个月一次的节奏发布 major release,按季度发布 minor release,并每两年发布一个 LTS。[3] 当前站点运营者会被提醒远离已经淘汰的版本,因为安全修复与关键修复不会永久流动。[3] 这种分离就是治理形态:Wikimedia 生产环境连续前进,独立安装需要命名清楚的支持窗口,扩展作者则要连接这两套节奏。
这是第一道采用边界。如果你的组织选择 MediaWiki,是因为它熟悉、成熟、扩展能力强,那么你接入的并非一个能放置五年后再看的安静 PHP 应用,而是一项发布政策。受支持生命周期表、mediawiki-announce 的惯例、LTS 的重叠期,都是产品的一部分。[3] 问题不在于“能不能跑起来”,而在于蜜月期之后谁负责升级、扩展兼容性和安全公告。
Core 由扩展保护
MediaWiki 的架构文档对扩展为何重要说得很直接:扩展系统让专用代码保持模块化,帮助防止 core 过度膨胀,也让第三方用户能在 MediaWiki 之上建立定制功能。[2] 这是一个伪装成架构说明的治理主张。成熟平台的健康,来自对定制附着位置的治理。
现代扩展注册契约把这条边界具体化。扩展与皮肤通过 extension.json 或 skin.json 声明自身,MediaWiki 使用这些元数据注册 hooks、modules、services、configuration 和 dependencies。[7] 随后 hooks 让 core 可以调用扩展,也让扩展接入扩展点,避免每个本地功能都演变成本地 fork。[2][7] 对经历过插件生态的团队来说,这就是表面与垃圾填埋场之间的差别。扩展边界让定制具备发布工具能够检查的形状。
困难在于,扩展灵活性会形成自己的兼容性预算。版本生命周期页面提到,Wikimedia wiki 通常携带约 140 个扩展,并鼓励扩展维护者在需要时维护对应 MediaWiki 版本的分支。[3] 这个数字本身就是警示标签。一个成功的 MediaWiki 安装往往会变成机构记忆:访问控制、模板、搜索、可视化编辑、内容工作流、语义元数据、垃圾信息控制、导入导出习惯,以及本地皮肤选择。wiki 越有用,升级规划就越围绕扩展图谱展开,而不只围绕 core 展开。
这也是 MediaWiki 治理强于“一个大型老项目”叙事的地方。这个平台没有假装扩展天然无害。它把扩展暴露为实际运行表面。内部平台团队若从 MediaWiki 借走一个习惯,应该是这一条:让扩展声明自己的契约,让版本兼容性保持可见,让部署压力足够规律,使破裂的假设在人们还记得变更内容时被发现。
决策权也是技术栈的一部分
第二个信号是明确的决策机制。MediaWiki 的技术决策背景说明写道,当前流程是在 2020 年采用的,是旧有 RFC 与 TechCom 流程的演进。[6] 这一点重要,是因为平台架构最终会产生单靠代码评审无法解决的问题:持久化边界、API 稳定性、兼容性承诺、跨团队部署风险,以及同时影响志愿开发者和 Wikimedia Foundation 生产团队的变更。
这里值得借鉴的重点,并非每个决策都要进入官僚流程,而是拥有这么多利益相关方的平台,需要一种办法区分日常工程判断与系统级承诺。MediaWiki 有第三方站点管理员、Wikimedia 生产运营者、志愿开发者、产品团队、扩展维护者,还有工作流已经写进模板和 gadgets 的社区。一个破坏性变更可以在技术上成立,同时在社会层面代价高昂。
良好的治理因此要回答两个问题。第一,谁拥有足够的运维语境来批准变更。第二,当参与者离开之后,未来维护者会在哪里找到当时的理由。决策记录、RFC 后继流程、发布说明和部署页面并不耀眼,却是机构记忆穿过人员更替与志愿者流动的方式。[3][4][6]
团队该复制什么
对小团队来说,可以复制的是有纪律的扩展边界。不要让本地 wiki 变更变成没有文档的 fork。优先选择受支持扩展,阅读兼容性说明,并把它们作为升级计划的一部分持续跟踪,而不是事后补记。如果本地扩展确有必要,就把它的注册元数据、hooks、services 和依赖假设写清楚。[7]
对平台团队来说,可以复制的是列车。每周或每两周一班的列车不用照搬 Wikimedia 的规模,但它应该为集成、staging、rollout 和 blocker 处理建立命名清楚的节奏。[4][5] 收益既是技术的,也是文化的:人们会逐渐停止把部署当作例外事件,转而把它视为具有已知角色的生产习惯。
对治理负责人来说,可以复制的是把日常评审与架构决策分开。大多数变更应沿着普通代码评审和发布程序流动。系统承诺需要另一条纸面轨迹:要解决的问题、被放弃的替代方案、兼容性影响,以及回滚或迁移预期。[6] 缺少这种区分时,平台要么拖慢所有事情,要么让不可逆选择藏进例行补丁之中。
边界条件
MediaWiki 不是每一种知识库的答案。如果团队想要的是运维责任极少的轻量内部笔记本,托管文档系统成本会更低。如果组织无法配置人员负责升级、扩展审查、备份和认证策略,MediaWiki 的成熟度也不会弥补这种缺口。成熟软件仍然需要成熟所有权。
反证也很清楚:如果一个 MediaWiki 安装无法让受支持 core 版本、扩展分支和部署所有权保持一致,那么这里描述的治理优势就会坍缩成维护债。项目为运营者提供了强模型,但它不会替一个机构运行自身。
换一个方向读这个项目,它的信号相当有分量。MediaWiki 能延续至今,是因为它没有把开放性缩减为“任何人都能编辑代码”,也没有把可扩展性缩减为“什么都能塞进去”。它围绕一个复杂的人类平台,建立了反复出现的发布时钟、文档化的扩展契约、公开决策流程和生产部署习惯。到了 2026 年,值得研究的是这一部分:wiki 是可见的,列车才是让它继续前进的东西。
来源
- Wikimedia Foundation, "MediaWiki" - overview of MediaWiki as free and open-source wiki software, its 2003 naming, and institutional users outside Wikimedia.
- MediaWiki.org, "Manual:MediaWiki architecture" - architecture overview, extension architecture, hooks, skins, namespaces, and modularity rationale.
- MediaWiki.org, "Version lifecycle" - continuous-integration framing, supported versions, release policy, LTS cadence, upgrade support, and extension lifecycle guidance.
- Wikitech, "Deployments" - Wikimedia deployment calendar, weekly MediaWiki deployment train, backport windows, and production coordination rules.
- Wikitech, "Deployments/Train" - weekly Release Engineering train process, branch rollout groups, blocker handling, and production deployment model.
- MediaWiki.org, "Technical decision making/Background" - background on the technical decision-making process adopted in 2020 after the RFC and TechCom process.
- MediaWiki.org, "Manual:Extension registration" -
extension.json,skin.json, hook registration, service wiring, dependencies, and extension metadata. - Wikimedia Commons, "File:MediaWiki Users and Developers Conference Spring 2026 Group Photo.jpg" - real March 27, 2026 conference photograph by Cindy.cicalese.