MediaWiki history/zh

MediaWiki是最初（自2001到2002年以来）由自己的社区为维基百科（后来的维基媒体项目）编写的自由软件.

Phase I: UseModWiki
维基百科于2001年1月推出. 当时，它主要是一项试验，试图推动Nupedia的内容制作，这是由吉米·威尔士创建的免费内容但同行评审的百科全书. 因为这是一个实验，维基百科最初由UseModWiki提供支持，这是一个用Perl编写的现有GPL wiki引擎，使用CamelCase并将所有页面存储在单个文本文件中，没有任何更改历史记录.

很快就出现了驼峰并不适合命名百科全书文章. 2001年1月下旬，UseModWiki开发人员和维基百科参与者Clifford Adams为UseModWiki添加了一项新功能：自由链接，例如能够使用特殊语法（双方括号）链接到页面，而不是自动驼峰链接. 几周后，维基百科升级到支持自由链接的新版UseModWiki，并启用了它们.

虽然这个初始阶段不是关于MediaWiki的“本身”，但它提供了一些上下文并表明，即使在MediaWiki创建之前，维基百科也开始塑造支持它的软件的功能. UseModWiki也影响了一些MediaWiki的功能，例如它的标记语言. Nostalgia Wikipedia包含2001年12月维基百科数据库的完整副本，当时维基百科仍在使用UseModWiki.

Phase II: the PHP script
In 2001, Wikipedia was not yet a top 10 website; it was an obscure project sitting in a dark corner of the Interwebs, unknown to most search engines, and hosted on a single server. Still, performance was already an issue, notably because UseModWiki stored its content in a flat file database. At the time, Wikipedians were worried about being "inundated with traffic" following articles in the New York Times, Slashdot or Wired.

因此，在2001年夏天，维基百科的参与者Magnus Manske（当时的大学生）在空闲时间开始使用专用的维基百科wiki引擎. 他的目标是使用数据库驱动的应用程序改善维基百科的性能，并能够开发“通用”维基引擎无法提供的维基百科特有的功能. 用PHP和MySQL支持编写的新引擎简称为PHP脚本、PHP维基、维基百科软件或第二阶段.

PHP脚本于2001年8月上市，9月在SourceForge上共享，并测试到2001年末. 由于维基百科由于流量增加而遭遇重复出现的性能问题，英语维基百科最终在1月从UseModWiki切换到PHP脚本2002年创建的其他语言版本也慢慢升级，尽管其中一些版本将由UseModWiki保留，直到2004年. 一个名为“User:Conversion script”的自动程序将现有文章的最后版本转换为阶段2格式，Brion Vibber于2002年9月在英语维基百科上部分恢复了之前对UseModWiki历史的修订.

作为使用MySQL数据库的PHP软件，PHP脚本是后来成为MediaWiki的第一次迭代. 它还介绍了当今仍在使用的许多关键功能，例如命名空间来组织内容（包括讨论页），皮肤和特殊页面（包括维护报告，贡献列表和用户监视列表）.

第二阶段分支的最后一个版本在SVN中提供.

第三阶段：MediaWiki
尽管PHP脚本和数据库后端有所改进，但增加的流量、昂贵的功能和有限的硬件的组合继续导致维基百科上的性能问题. 2002年，Lee Daniel Crocker重新编写代码，称新软件为Phase III. 由于该网站经常遇到困难，他认为没有多少时间坐下来正确设计和开发解决方案，所以他只是重新组织了现有的架构以获得更好的性能并且破解了所有代码. 添加了性能分析功能以跟踪慢速功能.

Phase III软件保持相同的基本界面，其设计外观和行为尽可能与Phase II软件相同. 还添加了一些新功能，例如新文件上传系统，内容更改的并排差异以及跨维基链接.

它于2002年7月部署到英语维基百科，同时硬件转移到新的（但仍然是单一的）服务器. 其他功能是在2002年添加的，如新的维护特殊页面，或“双击编辑”选项. 但性能问题很快就会重新出现. 例如，在2002年11月，管理员必须暂时禁用“查看计数”和“站点”统计信息，这会导致在每个页面视图上进行两次数据库写入. 他们偶尔也会将站点切换到只读模式以维护读者的服务，并在高访问时间期间因桌面锁定问题而禁用昂贵的维护页面.

2003年初，开发人员讨论了他们是否应该在消防无法管理之前从头开始重新设计和重新构建软件，或者继续调整和改进现有的代码库. 他们选择后一种解决方案，主要是因为大多数开发人员对代码库非常满意，并且充分相信进一步的迭代改进足以跟上网站的增长.

大约在同一时间，Brion Vibber有效地接任了该软件的首席开发人员和发布经理. 该代码现在由一个庞大且活跃的开发者组维护.

2003年6月，管理员添加了第二服务器，这是与Web服务器分开的第一个数据库服务器（新机器也是非英语维基百科站点的Web服务器）. 两个服务器之间的负载平衡将在那一年晚些时候建立. 管理员还启用了一个新的页面缓存系统，该系统使用该文件系统为匿名用户缓存呈现的，可随时输出的页面.

2003年6月，吉米威尔士创建了维基媒体基金会，这是一个支持维基百科并管理其基础设施和日常运营的非营利组织. 7月，维基百科软件被正式命名为MediaWiki，维基媒体基金会名称为由Daniel Mayer撰写的文字. 当时认为聪明的双关语会让几代用户和开发者感到困惑.

7月份添加了新功能，例如自动生成的目录，以及编辑页面部分的功能，两者目前仍在使用. 名为MediaWiki的第一个版本发生在2003年8月，结束了一个应用程序的长期起源，其整体结构从那时起将保持相当稳定.

There are no immediate plans for a Phase IV of the software. Instead, MediaWiki development now happens in smaller steps: see the Roadmap.

Once reached phase III, the growth of MediaWiki exploded, thanks to many volunteer developers, who are the reason that MediaWiki exists. Some notable examples of what's been done by volunteer devs follow (including those devs whose volunteer work was so helpful that they were later hired to work on MediaWiki professionally).

MediaWiki软件

 * Original MediaWiki software: Magnus Manske, Lee Daniel Crocker
 * Wiki tables: Magnus Manske
 * Namespaces: ?
 * Templates: Tim Starling (MW 1.2)
 * Template and MediaWiki namespace: Erik Möller and Tim Starling (MW 1.3)
 * MonoBook skin: Gabriel Wicke, with a design document and a mass of user comments (MW 1.3)
 * Categories: ? (MW 1.4)

阅读

 * The table of contents – Erik Möller

编辑

 * Section editing – Erik Möller
 * Watchlist: ?

參考資料

 * Cite – Ævar Arnfjörð Bjarmason


 * Regular/daily updates from translatewiki.net – Nikerabbit, Siebrand and since 2007 Raymond (including the LocalisationUpdate extension)
 * Committing or enabling all sorts of l10n – Nikerabbit, Brion Vibber, Rob Church, Ævar Arnfjörð Bjarmason, Rotem Liss, Hashar
 * Other l10n/i18n – Huji, Collinj, JeLuF, Reedy, Simetrical, IAlex

多媒體

 * MediaWiki core uploading infrastructure – Bryan
 * VipsScaler – Bryan


 * Original author 2005–2006 – Yurik
 * Maintainer 2008?–2013? – Catrope
 * Others – Bryan, IAlex, Reedy
 * Current maintainer – Anomie

维基文库工具

 * Wikisource:WSexport – Tpt
 * ProofreadPage - ThomasV (creator) and Tpt (current maintainer)

其他扩展
Some of the MediaWiki extensions used on WMF wikis originally created and/or currently maintained by volunteers:
 * CategoryTree
 * CheckUser
 * Global Usage
 * Interwiki
 * MassMessage
 * Nuke
 * Renameuser
 * SiteMatrix
 * Translate
 * Babel
 * CharInsert
 * EasyTimeline
 * InputBox
 * LabeledSectionTransclusion
 * Poem
 * RSS feed
 * WikiHiero
 * SpamBlacklist
 * ApiSandbox
 * cldr
 * Score – supporting musical scores by User:GrafZahl

And many widely used extensions for non-Wikimedia wikis, like:
 * Most of Semantic MediaWiki – many contributors
 * ConfirmEdit's most used and useful module, QuestyCaptcha – Emufarmers
 * ConfirmAccount

参见

 * Release notes and MediaWiki version history
 * Extremely short highlights of recent releases: Manual:Upgrading
 * History of MediaWiki version control
 * Principles and MediaWiki for context
 * Wikimedia history and MediaWiki timeline
 * Wikimedia Product/2016 Product Summary