MediaWiki:修订间差异
更多操作
小无编辑摘要 标签:已被回退 |
小无编辑摘要 |
||
| (未显示同一用户的11个中间版本) | |||
| 第1行: | 第1行: | ||
{{#seo: | {{#seo: | ||
|twitter_site=@kevinand_rew | |twitter_site=@kevinand_rew | ||
|description=MediaWiki 是由 Wikimedia | |description=MediaWiki 是由 Wikimedia 基金会开发和维护的自由开源 wiki 软件,使用 PHP 编写,支持多人协作编辑、版本控制、模板、分类、权限管理和扩展机制,广泛用于维基百科及各类知识共享平台。 | ||
}} | }} | ||
https://mediawiki.org | <div class="noexcerpt">{{信息框 | ||
< | | 标题 = MediaWiki | ||
[https://mediawiki.org/wiki/MediaWiki/ | | 原文名 = 媒体维基(非正式译名) | ||
</ | | 类型 = 开源维基软件 | ||
| 图片 = Mediawiki-logo-2020.png | |||
| 分组1 = 基本信息 | |||
| 字段1名 = 官网 | |||
| 字段1值 = [https://mediawiki.org mediawiki.org] | |||
| 字段2名 = 开发者 | |||
| 字段2值 = [[维基媒体基金会]]及 MediaWiki 社群 | |||
| 字段3名 = 编程语言 | |||
| 字段3值 = [[PHP]] | |||
| 字段4名 = 许可协议 | |||
| 字段4值 = [[GNU通用公共许可证]] | |||
}}</div> | |||
{{#tip-text: MediaWiki | 非官方中文译名为「媒体维基」}} 是一款[[开源]]、免费的[[类型::维基引擎]],使用 [[PHP]] 编写,后端数据库支持 [[MySQL]]、[[MariaDB]]、[[PostgreSQL]] 或 SQLite。它最初由 Magnus Manske 开发,并于 2002 年取代 UseModWiki 成为[[维基百科]]的基础平台。MediaWiki 支持页面编辑、版本历史、分类、模板、扩展机制等功能,适用于百科、文档、知识库等协作编辑场景。核心特点包括强大的权限管理、支持 [[Unicode]]、多语言界面以及可扩展的钩子系统。自发布以来,被数以万计的网站采用,包括[[维基媒体基金会]]旗下的所有项目及众多企业内部知识管理平台。<ref name="mw-main">[https://www.mediawiki.org/wiki/MediaWiki MediaWiki 官网:MediaWiki]</ref><ref name="mw-what">[https://www.mediawiki.org/wiki/Manual:What_is_MediaWiki%3F Manual:What is MediaWiki?]</ref> | |||
== 名称与定位 == | |||
MediaWiki 是一种服务器端 wiki 软件,而不是单个网站或百科项目。它常因名称相近而与 Wikipedia、Wikimedia 混淆:Wikipedia 是使用 MediaWiki 构建的百科网站,Wikimedia 通常指维基媒体运动、组织或相关项目,而 MediaWiki 指支撑这些站点运行的软件本身。<ref name="mw-what" /> | |||
作为 wiki 引擎,MediaWiki 的目标是让多人通过网页共同创建和维护内容。普通编辑者通常不需要直接书写 HTML 或 CSS,而是使用 wikitext 语法、内部链接、模板和分类来组织页面。系统会保留页面的历史版本,因此错误编辑、破坏或垃圾内容通常可以回退到早先版本。<ref name="mw-what" /> | |||
== 历史 == | |||
维基百科早期使用的是以 Perl 编写的 UseModWiki。随着访问量和协作规模扩大,Magnus Manske 在 2001 年开始开发面向维基百科需求的新 PHP/MySQL wiki 程序,该版本后来常被称为“Phase II”。2002 年 1 月,英文维基百科切换到这套新软件;它引入了命名空间、上传文件、监视列表、自动签名、用户贡献列表和管理员用户组等后来延续至 MediaWiki 的功能。 | |||
由于 Phase II 仍难以承受快速增长的负载,Lee Daniel Crocker 随后进行了重写,形成“Phase III”。2003 年起,这套软件开始使用 MediaWiki 这一名称,并逐渐成为维基百科及其他维基媒体项目的共同基础设施。随着维基媒体项目扩张,MediaWiki 的开发重点也长期围绕高访问量、多语言、权限控制、缓存、数据库复制和扩展接口展开。 | |||
== 主要功能 == | |||
MediaWiki 的核心功能围绕协作编辑展开。页面内容以 wikitext 保存,编辑记录会形成可追溯的历史版本;用户可以比较差异、撤销编辑、监视页面变化,并通过讨论页协调内容。分类系统用于整理页面,模板系统用于复用信息框、导航框、提示语和格式化片段,命名空间则把条目、讨论、用户页、模板、文件等不同用途的页面分开管理。 | |||
在内容管理之外,MediaWiki 还支持文件上传、多语言界面、权限组、系统消息本地化、特殊页面、API 调用和维护脚本。对大型站点而言,缓存、作业队列、数据库复制和搜索服务等组件可以配合使用,以提升性能和可靠性。 | |||
== 技术架构 == | |||
MediaWiki 以 PHP 编写,需要 Web 服务器、PHP 运行环境和数据库服务器。官方安装要求说明,当前稳定版本至少需要 PHP 8.2.0;数据库可使用 MariaDB、MySQL、PostgreSQL 或 SQLite,其中 MariaDB/MySQL 是最常见的部署选择。<ref name="mw-req">[https://www.mediawiki.org/wiki/Manual:Installation_requirements Manual:Installation requirements]</ref> | |||
页面正文、用户信息、系统消息和多数站点数据存储在数据库中;上传文件通常存放在文件系统中。实际部署时还可能使用 ImageMagick 或 GD 生成缩略图,使用 memcached 等组件做对象缓存,并通过命令行维护脚本完成升级、批量导入、队列处理等管理任务。<ref name="mw-req" /> | |||
== 扩展与定制 == | |||
MediaWiki 的扩展机制允许站点管理员增加新功能或改变既有行为。扩展可以提供新的特殊页面、解析器函数、API 模块、认证方式、可视化编辑器、语义数据能力或反垃圾功能等。官方手册也提醒,扩展的维护状态、版本兼容性和安全性需要逐一确认,尤其是在公开站点或生产环境中使用第三方扩展时。<ref name="mw-ext">[https://www.mediawiki.org/wiki/Manual:Extensions Manual:Extensions]</ref> | |||
除扩展外,站点还可以通过皮肤、模板、Lua 模块、站点 CSS/JavaScript、系统消息和权限配置进行定制。这使 MediaWiki 既能作为公共百科,也能用于内部文档、项目知识库、资料档案或面向社群的协作站点。 | |||
== 适用场景 == | |||
MediaWiki 适合需要长期积累、持续修订和多人协作维护的知识内容。它的优势在于版本历史清晰、链接和分类能力强、模板复用方便、权限和扩展生态成熟;缺点是安装和维护成本高于轻量级笔记系统,公开站点还需要持续处理垃圾编辑、安全更新和扩展兼容问题。 | |||
因此,MediaWiki 常用于百科、技术文档、游戏资料站、组织知识库、开源项目文档和档案型资料库。对于只需要少量静态页面或个人笔记的场景,静态站点生成器、轻量级 wiki 或文档平台可能更简单;而当内容规模、协作者数量和结构化需求增加时,MediaWiki 的模板、分类、权限和扩展机制会更有优势。 | |||
== 参见 == | |||
* [[维基百科]] | |||
* [[维基媒体基金会]] | |||
* [[维基引擎]] | |||
* [[PHP]] | |||
[[/术语表|术语表]] | [[/术语表|术语表]] | ||
== | == 参考资料 == | ||
<references />__索引__ | |||
{{外部百科导航}} | |||
{{SHORTDESC:基于 PHP 的自由开源维基网站引擎}} | |||
2026年6月27日 (六) 13:25的最新版本
MediaWiki 是一款开源、免费的维基引擎,使用 PHP 编写,后端数据库支持 MySQL、MariaDB、PostgreSQL 或 SQLite。它最初由 Magnus Manske 开发,并于 2002 年取代 UseModWiki 成为维基百科的基础平台。MediaWiki 支持页面编辑、版本历史、分类、模板、扩展机制等功能,适用于百科、文档、知识库等协作编辑场景。核心特点包括强大的权限管理、支持 Unicode、多语言界面以及可扩展的钩子系统。自发布以来,被数以万计的网站采用,包括维基媒体基金会旗下的所有项目及众多企业内部知识管理平台。[1][2]
名称与定位
MediaWiki 是一种服务器端 wiki 软件,而不是单个网站或百科项目。它常因名称相近而与 Wikipedia、Wikimedia 混淆:Wikipedia 是使用 MediaWiki 构建的百科网站,Wikimedia 通常指维基媒体运动、组织或相关项目,而 MediaWiki 指支撑这些站点运行的软件本身。[2]
作为 wiki 引擎,MediaWiki 的目标是让多人通过网页共同创建和维护内容。普通编辑者通常不需要直接书写 HTML 或 CSS,而是使用 wikitext 语法、内部链接、模板和分类来组织页面。系统会保留页面的历史版本,因此错误编辑、破坏或垃圾内容通常可以回退到早先版本。[2]
历史
维基百科早期使用的是以 Perl 编写的 UseModWiki。随着访问量和协作规模扩大,Magnus Manske 在 2001 年开始开发面向维基百科需求的新 PHP/MySQL wiki 程序,该版本后来常被称为“Phase II”。2002 年 1 月,英文维基百科切换到这套新软件;它引入了命名空间、上传文件、监视列表、自动签名、用户贡献列表和管理员用户组等后来延续至 MediaWiki 的功能。
由于 Phase II 仍难以承受快速增长的负载,Lee Daniel Crocker 随后进行了重写,形成“Phase III”。2003 年起,这套软件开始使用 MediaWiki 这一名称,并逐渐成为维基百科及其他维基媒体项目的共同基础设施。随着维基媒体项目扩张,MediaWiki 的开发重点也长期围绕高访问量、多语言、权限控制、缓存、数据库复制和扩展接口展开。
主要功能
MediaWiki 的核心功能围绕协作编辑展开。页面内容以 wikitext 保存,编辑记录会形成可追溯的历史版本;用户可以比较差异、撤销编辑、监视页面变化,并通过讨论页协调内容。分类系统用于整理页面,模板系统用于复用信息框、导航框、提示语和格式化片段,命名空间则把条目、讨论、用户页、模板、文件等不同用途的页面分开管理。
在内容管理之外,MediaWiki 还支持文件上传、多语言界面、权限组、系统消息本地化、特殊页面、API 调用和维护脚本。对大型站点而言,缓存、作业队列、数据库复制和搜索服务等组件可以配合使用,以提升性能和可靠性。
技术架构
MediaWiki 以 PHP 编写,需要 Web 服务器、PHP 运行环境和数据库服务器。官方安装要求说明,当前稳定版本至少需要 PHP 8.2.0;数据库可使用 MariaDB、MySQL、PostgreSQL 或 SQLite,其中 MariaDB/MySQL 是最常见的部署选择。[3]
页面正文、用户信息、系统消息和多数站点数据存储在数据库中;上传文件通常存放在文件系统中。实际部署时还可能使用 ImageMagick 或 GD 生成缩略图,使用 memcached 等组件做对象缓存,并通过命令行维护脚本完成升级、批量导入、队列处理等管理任务。[3]
扩展与定制
MediaWiki 的扩展机制允许站点管理员增加新功能或改变既有行为。扩展可以提供新的特殊页面、解析器函数、API 模块、认证方式、可视化编辑器、语义数据能力或反垃圾功能等。官方手册也提醒,扩展的维护状态、版本兼容性和安全性需要逐一确认,尤其是在公开站点或生产环境中使用第三方扩展时。[4]
除扩展外,站点还可以通过皮肤、模板、Lua 模块、站点 CSS/JavaScript、系统消息和权限配置进行定制。这使 MediaWiki 既能作为公共百科,也能用于内部文档、项目知识库、资料档案或面向社群的协作站点。
适用场景
MediaWiki 适合需要长期积累、持续修订和多人协作维护的知识内容。它的优势在于版本历史清晰、链接和分类能力强、模板复用方便、权限和扩展生态成熟;缺点是安装和维护成本高于轻量级笔记系统,公开站点还需要持续处理垃圾编辑、安全更新和扩展兼容问题。
因此,MediaWiki 常用于百科、技术文档、游戏资料站、组织知识库、开源项目文档和档案型资料库。对于只需要少量静态页面或个人笔记的场景,静态站点生成器、轻量级 wiki 或文档平台可能更简单;而当内容规模、协作者数量和结构化需求增加时,MediaWiki 的模板、分类、权限和扩展机制会更有优势。