本文主要述说Mediawiki安装、配置和使用的入门教程linux社区,以及管理员须要用到的一些功能。维基百科的设计思路与往年我使用的WordPress系统不太一样,以管理员身分步入以后,没有见到仪表盘后台、没有添加wiki页面的入口,也没有侧边栏导航条的编辑页;管理页面的入口也设置的比较奇怪,比较难找。下边从网路上总结了一些比较基础的Mediawiki使用经验。
内容大纲如下:
一、Mediawiki特征
二、Mediawiki安装
三、Mediawiki使用
3.1、修改网站LOGO
3.2、图片相关:上传、使用、文件大小、外部引用
3.3、其他文件上传
3.4、左侧导航栏设置:编辑、样例
3.5、界面信息更改
3.6、皮肤设置
3.7、Mediawiki的基本编辑使用:词条编撰原则和规范:剖析维基百科文章,建议书写规范:总分总形式。如:文章概要,章节标题,内容,分类申明,入链,参考文献
3.7.1、创建新页面:搜索框新词条并创建的维基设计原理,防止冗余词条的出现
3.7.2、创建页面存在链接
3.7.3、缩进与列表
3.7.4、段落调整
3.7.5、插入图片
3.7.6、目录控制
3.7.7、表格使用
3.7.8、边框疗效
3.7.9、页面分类:词条主题的分类,与相关词条分类链接,防止信息孤岛
3.7.10、模板
3.8、页面权限设置
3.8.1、禁止新用户注册
3.8.2、禁止匿名用户编辑
3.8.3、设定匿名用户(未登入)可以看见的页面
3.8.4、页面保护
基于以上,可以解决:词条创建,自定义导航,通过词条的分类申明、入链编辑而得到的重要度剖析与关系,防止了信息孤岛。维基的KPI化,还有权限管理,词条编辑历史的使用可避免错误。
一、Mediawiki特征
Mediawiki目前支持多种语言,其实对英文支持也是十分不错的。以下是Mediawiki的一些特征:
1、PHP+MySQL,
2、安装简单,mediawiki考虑到了各种群体,所以安装十分简单。只要你认真填写mysql数据库配置信息,很容易就安装上了。
3、全世界最大的wiki项目维基百科全书是使用mediawiki的成功范例,数据量、访问量都超级庞大。
4、程序功能丰富,可以满足简单到中级的wiki网站制做。
二、Mediawiki安装
Mediawiki官方安装教程:
在Ubuntu上安装
服务器环境
Web服务器:apache2server(sudoapt-getinstallapache2)
PHP语言:php(sudoapt-getinstallphpphp-mysql)
数据库:mysql(sudoapt-getinstallmysql-clientmysql-server)
下载mediawiki
下载地址:
wget
解压,更改文件名(除去版本号)
tarxvfmediawiki-1.31.1.tar.gz
mvmediawiki-1.31.1/mediawiki/
将其放在apache2的服务器主目录下(/var/www)
sudomvmediawiki//var/www/mediawiki
在浏览器中输入linux系统介绍,domain可以是域名或ip地址,例如
步入安装页面,选择安装配置所有的语言,这儿都选中文繁体(zh-hans);
配置数据库
这儿使用的是mysql,须要填写数据库数组。
选项设置
比如版权和许可证,电子电邮设置,扩充,文件上传之类的。因为是第一次安装,设置了简单的版权,勾选了一些关于扩充方面的选项(随即通过更改配置文件修改),以下配置内容:
三、Mediawiki使用
Mediawiki的配置文件分两处:1、includes/DefaultSettings.php-系统默认的配置文件;2、LocalSettings.php用户设置的配置。主要在LocalSettings.php中进行设置和覆盖相应配置,而不是DefaultSettings.php。
1、修改网站LOGO
想要将左上角的mediawiki图标替换为自己的图标,可以在/resources/assets/目录下找到名为“wiki.png”的图片文件,将它替换为自己的图片即可。
网站Logo的URL路径:
/resources/assets/wiki.png(MW1.24+)
/common/images/wiki.png(MW1.23版及曾经)
其实也可以采用编辑$wgLogo变量的方式,下边是个人使用的技巧。
找寻logo图片,找到的图片(bug.jpg),将其放在/var/www/mediawiki/images/目录。编辑/var/www/mediawiki/LocalSettings.php,在文件末尾添加:
$wgLogo="/mediawiki/images/bug.jpg";
注意,images是上传文件的图片储存的目录,bug.jpg是通过浏览器远程传到服务器上的。在上传的过程中出现了问题:Couldnotcreatedirectory“mwstore://local-backend/local-public/1/11
在查看参考7后,找到解决方案,须要将mediawiki下的images的文件的权限更改:
sudochown-Rwww-data:www-dataimages/
此时,就可以正确的上传文件了。关于文件上传的更仔细的介绍参考:。
2、图片相关
启用Mediawiki的上传功能
$wgEnableUploads=true;
这样就启用了MediaWiki的上传功能,其实若果在前面的安装过程中设置了文件上传功能,可以看见配置文件中默认将其设置为true。
MediaWiki上传图片
上传页面的地址是:Special:Upload,也可以先步入特殊页面,之后步入上传文件页面。在该页面中上传图片,设置好文件名和描述,上传成功之后就可以在文章中使用了。
MediaWiki使用图片
在要插入图片的位置输入:[[Image:file.jpg]]
就可以显示对应的图片了。
限制上传文件大小
默认DefaultSettings.php中上传文件的大小为100MB,如需设置可以在LocalSettings.php降低下边一行:
$wgMaxUploadSize=xxx;#单位为字节。
备注:上传文件的大小本身遭到php环境的限制,即/etc/php5/apache2/php.ini中的post_max_size和upload_max_filesize变量的值。Mediawiki中上传限制的大小的取值次序为:post_max_size>=upload_max_filesize>=$wgMaxUploadSize。假如php环境中设置的值比较小,$wgMaxUploadSize设置的再大也没有用。更改php.ini后,须要重启apache服务器(sudo/etc/init.d/apache2restart)。
引用外部图片
在localsettings.php降低下边一行即可(可能导致安全问题):
$wgAllowExternalImages=true;
通过图片URL进行上传(使用可被公开访问的图片链接进行远程图片上传,不过只有操作员才可以用,这是出于安全性考虑)
在localsettings.php降低下边一行(可能导致安全问题,建议不要那么做):
$wgAllowCopyUploads=true;
3、其他文件上传
开启其他文件上传,例如:doc,pdf,ppt,docx,pptx
打开mediawiki根目录中的includes/DefaultSettings.php,查看$wgFileExtensions,此变量默认仅支持'png','gif','jpg','jpeg'四种,这意味着可以上传的文件只有这几种,并且可以在LocalSettings.php中设置,添加如下行(建议不要直接更改DefaultSettings.php):
$wgFileExtensions=array('png','gif','jpg','jpeg','doc','ppt','pdf');
上传过程出现错误提示“该文件包含或具有一个不正确的扩充名。请复查此文件并重新上传”,例如早已在wgFileExtensions中设置了容许上传ppt类型,还是上传不了。在wiki根目录中LocalSettings.php中添加如下一行:
$wgVerifyMimeType=false
其实,也可以直接更改includes/DefaultSettings.php,将$wgVerifyMimeType更改为false;并且不建议这样做。备注:此时Mediawiki会把pptx当zip处理,word、ppt都是正常的。
4、左侧导航栏设置
步入特殊页面,找到sidebar步入,编辑该页面设置导航栏。
备注:因为安装的是英文版,在特殊页面中找了半天都没有见到导航栏(sidebar)。后来试了直接链接MediaWiki:Sidebar(例如,像这样:Sidebar),才见到了sidebar的页面。
点击页面进行编辑,更改格式如下:
*导航栏名称一
**链接一地址|链接一名称
**链接二地址|链接二名称
*导航栏名称二
**链接一地址|链接一名称
**链接二地址|链接二名称
这儿是样例导航栏:
*navigation
**mainpage|mainpage-description
**recentchanges-url|recentchanges
**randompage-url|randompage
**helppage|help
*SEARCH
*TOOLBOX
*LANGUAGES
*推荐网站
**|资讯
**|软件
**|系统
**|建站
**|WordPress
备注:一定要严格依照格式,假如仅仅填写链接地址不标明名称是显示的,我一开始就由于这些事情纠结了老半天。
5、界面信息更改
MediaWiki的大部份界面信息储存在Special:Allmessages(特殊:所有信息)上面,包括界面的文字、链接、气泡提示、热键等。进行订制时,请找到相应信息,点击左栏链接进行更改。
6、皮肤设置
Mediawiki的皮肤文件储存在mediawiki主目录下skins文件夹(/var/www/mediawiki/skins)下。通常来说,皮肤包中包含xxx.php、xxx.deps.php与xxx目录这三部份(mediawiki自带的皮肤没有xxx.deps.php文件,xxx表示特定的皮肤名)。
将上述文件(xxx.php、xxx.deps.php与xxx目录)拷贝到skins目录下,之后使用创建时的用户名登陆,步入参数设置(Special:Preferences)页面,在皮肤中选择后保存即可。
注:非注册用户难以选择皮肤,且皮肤的选择仅仅和登陆用户相关连。
假如希望皮肤能对所有用户都生效,这么可以在将其设为默认皮肤,然后匿名用户等都将默认使用这些风格。打开LocalSettings.php,在文件末添加如下行:
$wgDefaultSkin=“monobook”;
备注:这儿使用的是系统自带的monobook皮肤,可以成用户上传的其他任何皮肤。
7、mediawiki的基本编辑
创建新页面
借助搜索功能创建新页面,比如在左侧栏中搜索“超人”,搜索结果如下:
在最下方的提示中点击“超人”的链接构建一个关于“超人”页面。
创建页面存在链接
Wiki页面的正文中存在棕褐色的链接,则表明该条目中还没有内容,可以点击它来编辑新的条目,保存后就手动创建新页面。例如,右图中红色的联接就是还没有创建的页面。
假如须要自行构建新页面,请随便编辑某个页面并输入“[[新条目名称]]”,点击“显示预览”按钮后即可按上面所述进行操作。其实,这可以通过前面的搜索创建新的页面。
缩进与列表
mediawiki中的缩进不能使用全角空格调整。有以下几种方法控制缩进格式缩进:(举例附后)
'''宋体文字'''
''粗体文字''
[[链接标题]]内部链接
[链接标题]外部链接
==dfd==二级标题字导航
====dfd===五级标题字以这种推
[[Image:Example.jpg]]嵌入文件
使编辑的时侯出现实线框,使重要的内容显示比较显眼,只要在开头加上一个空格就可以了(这儿的空格必须是全角下的才可以)
段落调整
wiki文本中,单独回车并不会出现换行。强制换行可以如下手法:
1、增加空行会分开不同的段落
2、在换行位置使用强制换行标签“br”
假如须要段与段之间的空行,只需在前段末尾加上"br”"br",将“换为。
关于首行空两格
假如遵守英文书写习惯,须要在首行前空两格,可以在首行后端输入“全角”的空格符(仍然不晓得半角有哪些好处)。
插入图片
1、当图片坐落本机(没有网址可供调用)时,须要将图片上传后才会使用。(该页面的链接可在“特殊页面”中找到,标明为“上传文件”,在两侧的工具箱中也可以见到)。注意:图片文件不能使用英文名称,应在上载时指定为英语名称。
3、将图片上传后,在须要插入图片的位置输入“[[Image:Filename.jpg]]”即可(Filename为上传图片的文件名)ubuntu导航栏放在下面,即可出现如,假如须要添加方框疗效,可以输入“[[Image:Filename.jpg|thumb]]”添加图片方框。
3、对于上传到本站的图片,还可以随便指定显示大小、左右位置、添加说明文字等,请参看Mediawiki中图象的使用。
目录控制
当文章中富含3个以上标题时,mediawiki将手动在第一个标题之前生成目录(这是默认的设置)。
这两个wiki标记不限制出现位置,但通常出现在文章腹部或尾部且单独成行。
表格使用
示例如下:
{|
|第1行第1列||第1行第2列||第1行第3列
|-
|第2行第1列||第2行第2列||第2行第3列
|-
|第3行第1列||第3行第2列||第3行第3列
|}
说明:“{|”、“|}”是表格的头尾ubuntu导航栏放在下面,“|-”代表表格换行,“|”引导表格行内容并以“||”分开不同单元格
注意:表格控制符必须在行首书写!非行首表格代码将不被认可,单元格内容可包含链接、图片等,以及嵌套内部表格。
mediawiki的默认表格没有边框,假如须要的话需添加参数。(见下文介绍)
border="1"cellspacing="0"是边框款式,不写的话就不出边框
让一行、一列或一整个表格都是同样的颜色
{|style="background:yellow;color:blue"border=1
|-
|这行是
|蓝字
|黄背景
|-style="background:navy;color:white"
|这行是
|黄字
|深海蓝
|-
|这行
|style="background:white"|比较
|不一样
|}
边框疗效
漂亮的页面布局,离不开各类边框的使用。通过不同样式的边框,可以让不同的内容蓝筹股一目了然,有效改进页面的可读性。
边框款式的基础实现有两种:
div边框
表格边框
测试
solid单线边框
border:1pxsolid#808080
常用边框之一,推荐
dashed实线边框
border:1pxdashed#808080
常用边框之一,推荐
double双线边框
border:3pxdouble#808080
常用双线边框之一,推荐
页面分类
分类是mediawiki中一种重要的内容关联手段。分类将同类文章在同一个页面上集中上去,为读者提供查看相关资料的便捷。
mediawiki的分类还有上、下级关系,使内容关联更有层次。在被编辑的文章中添加[[category:XXX]]保存以后这篇文章都会手动被分类为XXX。
分类说明文本通常被置于文章末尾,但实际上它可以坐落文章的任何部份。据悉,分类页面中也可以进行编辑,以进行必要的说明。
一篇文章可以有多个分类,次序书写即可。诸如文章同时在XXX、YY分类中出现:
[[category:XXX]]
[[category:YYY]]
引用分类页面
在mediawiki文章中链接分类页面正确的写法是[[:category:XXX]],显示时不会显示上面逗号。
上传图片也可以分类
通过对上传图片的分类,可以让更多人了解系统中有什么图片,便捷在文章中引用,并大量降低重复图片的上传。上传图片以后,编辑该页面并输入[[category:分类名称]]之后保存,则访问这个分类页面时才能看到该图片的索引了
模板
1、引用模板{{模板名称}}
2创建或则编辑模板[[Template:模板名称|页面显示文字]]
比如:设置针对条目的讨论内容显示的模板
在页面下方降低一个名为{{讨论}}的模板,模板内容你可以参考模板:讨论
{|style="width:100%;border:1pxsolid#cef2e0;background-color:#f5fffa;"
|style="background-color:#f5fffa;"|'''用户留言:'''
|-
|style="background-color:#ffffff;"|{{#ifexist:{{TALKPAGENAME}}|:
{{{{TALKPAGENAME}}}}|目前暂无留言}}
|-
|[{{fullurl:{{TALKPAGENAME}}|action=edit§ion=new&preload=Template:Sign&editintro=Template:SignNotice}}新增留言][{{fullurl:{{TALKPAGENAME}}|action=edit}}编辑留言]
|}
[[Category:模板]]
假如模板不支持ifexist,须要安装模板扩充句型扩充.Extension:ParserFunctions
:ParserFunctions
加姓名与日期,降低~~~~
8、页面权限设置
严禁新用户注册
在LocalSettings.php的位置加入:
#Preventnewuserregistrations
$wgWhitelistAccount=array("user"=>0,"sysop"=>1,"developer"=>1);
此时用户难以自助注册。管理员可以到登陆页面(Special:UserLogin)里,输入一个用户名和email,之后点击“byemail”,系统创建账号并将随机密码发送到指定email里。
严禁匿名用户编辑
在LocalSettings.php加入以下方程左边的值决定各组成员的权限。右边第一方括弧内的'*'代表包括匿名用户在内的所有成员。登入用户控制储存在'user'组,这种将综合决定user_groups数据表中的成员权限。(适用1.5版本)
这种设置代替了原先的wgWhitelistAccount和wgWhitelistEdit。
#$wgGroupPermissions=array();
$wgGroupPermissions['*']['createaccount']=false;
$wgGroupPermissions['*']['read']=true;
$wgGroupPermissions['*']['edit']=false;
以上事例中严禁了匿名用户的自行创建帐户和进行编辑。(“编辑”标签仍会显示,但匿名用户点击时会被提示要求进行登陆。
设定匿名用户(未登入)可以看见的页面
上述设定以后,用户连首页和登陆页面也看不到了。因而须要继续更改在LocalSettings.php中加入:
$wgWhitelistRead=array("MainPage","Special:Userlogin","Wikipedia:Help");
这样,匿名用户只能看见MainPage、登录页面以及帮助页面。注意按照自己站点的情况更改上述设置,比如改为:
$wgWhitelistRead=array("首页","Special:Userlogin","某甲Wiki:Help");
对于多字节语言(比如英文),PHPparser可能不能正确解码。这时可能要用到PHP的urldecode()函数来转换一下: