MediaWiki是著名的开源wiki引擎,全球最大的wiki项目维基百科(百科词条协作系统)是使用MediaWiki的成功范例,MediaWiki的最大作用在于对知识的归档,可用于构建企业/个人知识库。
MediaWiki官网地址为http://www.mediawiki.org/wiki/MediaWiki
一.安装
安装MediaWiki前需要搭建运行环境,我的环境是apache+php+mysql;有了运行环境,然后下载MediaWiki,压缩包 是.tar.gz格式,在Windows上可以使用7-Zip解压;解压到文件夹如mediawiki下,拷贝到web服务器根目录,然后通过浏览器访问 MediaWiki所在目录(例如:http://localhost/mediawiki/index.php),跟随安装提示直到完成。配置完成后会 生成LocalSettings.php文件,根据提示下载并保存至mediawiki根目录(index.php的同级目录)即可。
安装成功后,点击进入首界面,如下图所示。
二.使用入门
1.修改默认logo
mediawiki站点默认logo图片路径名:$WIKI_HOME/skins/common/images/wiki.png,可以通过以下两种方式修改默认logo:
(1)用图片编辑工作打开wiki.png图片,进行修改后覆盖即可;或者自己新建一个135 x 135像素,图片格式为.png的同名图片覆盖即可,建议使用透明背景,否则将严重影响视觉效果。
(2)将logo文件放在目录$WIKI_HOME/skins/common/images下,再在根目录下打开 LocalSettings.php文件,找到$wgLogo= “$wgStylePath/common/images/wiki.png”,修改为$wglogo=”$wgStylePath/common /images/logo文件名”
注:可以使用默认logo图片同目录下的mediawiki.png替代。
2.去除底部powered by图标
在配置文件LocalSettings.php中加入如下行即可,
unset($wgFooterIcons[‘poweredby’]);
3.修改皮肤
MediaWiki系统的默认皮肤是Vector,使用管理员账户登录后,可以通过”设置” -> “显示” –> “皮肤”预览所有皮肤效果,不过此处修改保存的话,只有在管理员账户登陆时才有效。
如要修改系统默认皮肤,要在根目录下打开配置文件LocalSettings.php,找到$wgDefaultSkin = ‘vector’;一行,如希望使用Modern皮肤,则改为$wgDefaultSkin=’modern’;
如想增加新皮肤,可下载皮肤插件保存到skins目录下,然后通过上述方法使用新皮肤。
4.新建页面
如果搜索一个不存在的页面,会得到一个链接去创建新页面;也可以用wiki的URL创建新页,如想新建一个名为HelloWorld的页面,则可在地址栏输入:http://localhost/mediawiki/index.php/HelloWorld,在出现的页面中点击”创建”,输入内容后点击”保存页面”即可,如下图所示。
5.页面格式化
可以通过使用wiki标记来格式化文本,下文描述了部分wiki标记,更多详情可查阅http://www.mediawiki.org/wiki/Help:Formatting
字符格式化
如,文本内容用两对单引号括起来(”italic”)可实现斜体效果,用三对单引号括起来(”’bold”’)可实现粗体效果,用 strike标签括起来(<strike>strike</strike>)实现删除线效果;使用标签nowiki括起来则会忽 略上述标记。
章节格式化
(1)标题
MediaWiki页面中的标题使用等号标记,用几对等号括起来则表示是几级标题。
== Level 2 ==
=== Level 3 ===
==== Level 4 ====
===== Level 5 =====
====== Level 6 ======
注: #1. 不建议用一对等号,它表示页面自身。#2. 页面中有4级及更多标题时,会自动生成目录。
(2)水平线
如果想在页面内容之间插入分割线,可在要分割的地方使用”—-“,如下所示:
水平线之前
—-
水平线之后
(3)无序列表
文本前加”*”号可以实现无序列表效果,”*”号的个数表示列表对应的级别,如
*1
**11
**12
*2
**21
**22
(4)有序列表
文本前加”#”号可以实现有序列表效果,”#”号的个数表示列表对应的级别,如
#1
##11
##12
#2
##21
##22
分段
MediaWiki不识别换行。要另起一段,需要使用一空行;在段落中可通过HTML标签<br/>强制换行。
HTML标签
在MediaWiki中允许使用部分HTML标签。如使用<u>标签实现下划线效果,<s>标签实现删除线效果等。
6.链接
下文仅简要描述内部链接和外部链接的用法,更多信息可查阅http://www.mediawiki.org/wiki/Help:Links
内部链接
内部链接,即链接到wiki中其他页面的链接。将目标页面名使用两对方括号括起来表示一个内部链接(如[[HelloWorld]])。保存后,如链接指向的页面已存在,链接会显示为蓝色,否则显示为红色。
如果想将链接显示为文字信息,需使用格式[[页面名|文字]],如[[HelloWorld|到HelloWorld页面]]。
外部链接
外部链接,即链接到其他网站的链接。输入网站地址并以空格结束,就可以生成一个外部链接。保存后,链接后会有一个箭头,表示指向外部。
如果想将链接显示为文字信息,需使用格式[外部网址文字],如[http://www.baidu.com 百度]。
7.分类
在页面中加入[[Category:分类名]],会在页面底部生成分类链接,点击链接后可看到该分类下的所有页面。
8.上传文件设定
配置文件LocalSettings中,$wgEnableUploads就是控制上传的参数,true允许,false不允许。
MediaWiki中允许上传的文件类型是有限制的,默认支持’png’,’gif’, ‘jpg’, ‘jpeg’这几种文件类型,对应的配置可参阅DefaultSettings.php中$wgFileExtensions的值;而不允许的文件类型在 参数$wgFileBlacklist中设定。
登录后,可以通过导航栏或特殊页面中的上传文件链接上传文件。可使用[[File:文件名]]在页面中引用文件,如果引入的是图片文件,还可以指定 图片宽度([[File:Example.jpg|200px]]),加入图片说明([[File:Example.jpg|图片1]])
9.编辑器
MediaWiki自带的编辑器比较简单,用于页面编辑不太方便。从1.18版开始,MediaWiki中集成了一款增强型编辑器WikiEditor,在LocalSettings.php中加入如下行可启用WikiEditor,
$wgDefaultUserOptions[‘usebetatoolbar’] =1;
从1.21版本开始,MediaWiki默认集成了GeSHi(Generic Syntax Highlighter)插件,这是一款支持语法高亮显示的插件,借助<syntaxhighlight>标签可在页面中显示格式化的源码, 还可以在此标签中使用参数”line”以显示代码行号,如下面的例子所示:
<syntaxhighlight lang=”php”line>
<?php
echo “Hello, World!”;
?>
</syntaxhighlight>
10.修改导航栏
通过wiki地址index.php/MediaWiki:Sidebar
如,http://localhost/mediawiki/index.php/MediaWiki:Sidebar,或者在搜索栏中输入”mediawiki:sidebar”,进入页面后点击编辑即可。
导航栏格式如下:
*导航栏名称一
**链接一地址|链接一名称
**链接二地址|链接二名称
*导航栏名称二
**链接一地址|链接一名称
**链接二地址|链接二名称
11.查看MediaWiki版本
可通过选择”特殊页面” -> “数据与工具” -> “版本”,或者搜索”Special:Version”打开版本页面,在这个页面可以看到MediaWiki版本、PHP版本、Apache版本和所安装的扩展的版本等信息。
12.用户组
MediaWiki中有3个用户组:机器人/管理员/行政员,每个用户组的具体权限可通过”特殊页面” -> “用户组权限”查看,通过首页中”创建用户”注册的用户默认不属于任何用户组;从属于行政员用户组的用户,可通过”特殊页面” -> “用户权限管理”给其他用户分配用户组。
13.页面缓存
在配置文件DefaultSettings.php中,找到参数$wgCacheEpoch,将参数值置为当前时间,可以取消全部已经缓存的页面(包括客户端和服务器端)。
日常开发中总会有许多东西需要记录,很多软件都可以做到这一点,例如有道云笔记,或者写博客。但个人偏爱于Mediawiki,因为wiki可定 制性强,总给人一种高端大气的感觉。起初对wiki这种东西一无所知,受老总的影响,开始在公司推广wiki,可惜到现在没有推广成功,不过自己倒是喜欢 上这东西了。废话少扯,进入正题吧。
首先大致说说wiki是什么吧。在我看来,wiki就是一种学术性的博客,但是更加严谨,相当于字典,也不完全像字典一样拘束与单词,总 之,我也说不清楚,形象的说,就是一个文档系统吧。当前有很多wiki软件,例如Wikipedia使用的Mediawiki,以及MoinMoin,还 有其他的很多版本;而Mediawiki应该是最广为人知的吧。
mediaWiki2
Wiki安装
Mediawiki基于php,可以选择MySQL、Sqlite等诸多数据库,在windows上首选wamp server来配置神一般的Php+MySQL环境。本文使用的是Mediawiki1.21.2,Wamp2.4 ,windows8 pro x64的环境。可以建一个专门放网站的目录,例如d:/work/www,将wiki解压到该目录下即可。在wamp安装目录下的alias目录下,新建一个配置文件,例如wiki.conf,内容如下:
1
2 3 4 5 |
NameVirtualHost *:80
<VirtualHost *:80> DocumentRoot “D:/Work/www/mediawiki-1.21.2/” ServerName solee.org </virtualHost> |
因为是本机的缘故,我在host中将solee.org解析到127.0.0.1,穷人买不起虚拟主机。这样访问localhost,将会 进入Mediawiki的初始化安装界面。该安装程序实际上是引导你生成LocalSettings.php,当然也可以手工设置。建议先自己选择,这样 会生成一个LocalSettings.php文件,并执行相应的数据库初始化,将此php下载后放到wiki的根目录下面,直接再访问 localhost即可进入wiki。好了,wiki安装就这样简单。
基本配置
wiki配置很丰富,下面介绍几种可能感兴趣的配置:
#个人wiki,禁止创建帐号功能,除非登陆才能访问
$wgGroupPermissions[‘*’][‘createaccount’] = false; $wgGroupPermissions[‘*’][‘edit’] = false; $wgGroupPermissions[‘*’][‘read’] = false; #启用详细异常显示. $wgShowExceptionDetails = true; #去除底部powered by图标 unset($wgFooterIcons[‘poweredby’]); #对于没有登录的用户,没有登录的用户移除页面顶部的讨论页链接 $wgShowIPinHeader = false; #默认在新标签页中打开链 |
文章有(3)条网友点评
Heya! I know this is sort of off-topic however I had
to ask. Does running a well-established blog such as yours require a massive amount work?
I am brand new to blogging however I do write in my journal on a daily basis.
I’d like to start a blog so I can easily share my personal experience
and feelings online. Please let me know if you have any ideas
or tips for new aspiring bloggers. Thankyou!
@ luluserv 其实只需要一个服务器空间。
可以是付费或免费的云服务器,VPS,或者其它独立主机。
一个顶级域名。
这些都可以在网络上找到出售的供应商。
一个用来搭建博客的程序,上传到服务器空间并安装,比如WordPress。
当把一切布置好后,并不需要大量时间来打理,因为它们已经布置完成。
闲暇时光你就可以登录管理后台来撰写日记与博文,发表它们。
Actually, only one server space is needed.
It can be a paid or free cloud server, VPS, or other independent hosting.
A top-level domain name.
These can all be found on the internet as suppliers for sale.
A program for building blogs, uploading to server space and installing, such as WordPress.
After everything is arranged, it doesn’t require a lot of time to take care of it because it has already been arranged.
In your spare time, you can log in to the management backend to write diaries and blog posts, and publish them.
Excellent blog post. I certainly appreciate this site.
Keep it up!