Mediawiki的配置和修改方法1、界面设置
在MediaWiki中大部分的界面信息都存放在Special:Allmessages页面里面,包括界面的文字、链接、气泡提示、热键等等, 杂七杂八的,非常多,你可以在直接输入Special:Allmessages来根据自己实际情况修改配置。至于具体的都是些什么内容,本文就不在多说 了,您可以通过google找到更具体的,呵呵!
2、上传文件设定
修改 LocalSettings,$wgEnableUploads就是控制上传的参数,true允许,false不允许,默认应该是允许的。您还需要将 images目录加上可写入的权限,要不然用户无法上传。通过$wgFileExtensions = array('','','')设定允许上传的文件类型,$wgFileBlacklist = array('','','')设定不允许上传的文件类型。
3、修改为/wiki/式网址。
修改LocalSettings.php
$wgArticlePath = "/wiki/$1";
再修改httpd.conf(apache配置文件)
Alias /wiki /filesystem/path/to/you/site/index.php
Alias /index.php /filesystem/path/to/you/site/index.php
备注:网上还有很多修改为/wiki/式网址的方法,我都测试过,发现除了使用apache别名功能外,还就就是利用.htaccess编写rewrite rule了。具体的,大家可以google下。
4、提示信息修改
比较常用的提示信息有以下几个:
MediaWiki:Mainpage 首页
MediaWiki:pagetitle (浏览器上方)网页标题
MediaWiki:Privacy (页脚)隐私政策
MediaWiki:Aboutpage (页脚)关于本站
MediaWiki:Disclaimers (页脚)免责申明
MediaWiki:Sidebar (测栏)导航栏 格式:URL|标题
5、LOGO修改
最简单的,直接替换/skins/common/images/wiki.png文件,当然,你也可以通过设定$wgLogo来设定logo文件位置。
6、使用者权限修改
$wgGroupPermissions['*' ]['createaccount'] = false;
$wgGroupPermissions['*' ]['read'] = true;
$wgGroupPermissions['*' ]['edit'] = false;
$wgGroupPermissions['*' ]['createpage'] = false;
$wgGroupPermissions['*' ]['createtalk'] = true;
Mediawiki版本:1.5.8
以下代码增加的位置:
LocalSettins.php
因为require_once( "includes/DefaultSettings.php" )中初始化过,所以下面语句必须放在此语句之后。
禁止新用户注册
在LocalSettings.php中加入:
#Prevent new user registrations
$wgWhitelistAccount = array ( "user" => 0, "sysop" => 1, "developer" => 1 );
此时用户无法自助注册。
管理员可以到登录页面(Special:UserLogin)里,输入一个用户名和email,然后点击“by email”,系统创建帐号并将随机密码发送到指定email里。
禁止匿名用户编辑
#$wgGroupPermissions = array();
$wgGroupPermissions['*''createaccount'] = false;
$wgGroupPermissions['*']['read'] = true;
$wgGroupPermissions['*']['edit'] = false;
“编辑”标签仍会显示,但
匿名用户点击时会被提示
要求进行登录。
等式右侧的值决定各组成员的权限。左侧第一方括号内的'*'代表包括匿名用户在内的所有成员。登录用户控制存放在'user'组,这些将综合决定user_groups数据表中的成员权限。
这些设置取代了以前的wgWhitelistAccount和wgWhitelistEdit。
如此设定后,用户连首页和登录页面也看不到了。
///
限制非注册用户不可读
$wgWhitelistRead = array( "Main Page", "Special:Userlogin", "-", "MediaWiki:Monobook.css" );
$wgGroupPermissions['*']['read'] = false;
///限制非注册用户不可读
设定匿名用户(未登录)可以看到的页面
$wgWhitelistRead = array ("Main Page", "Special:Userlogin", "Wikipedia:Help");匿名用户只能看到
Main Page、登录页面以及帮助页面。
修改其他的例子:
$wgWhitelistRead = array ("首页", "Special:Userlogin", "某某Wiki:Help");
$wgWhitelistRead = array(
urldecode("%E9%A6%96%E9%A1%B5") ;
对于多字节语言(例如中文),PHP parser可能不能正确解码,要用到PHP的urldecode()函数来转换。
Mediawiki修改左侧导航条
当需要在mediawiki左侧导航条的内容时,请在搜索栏中输入“mediawiki:sidebar”,然后进行编辑(需要以站长或管理员身份登录)。
以新窗口打开外部链接
- 打开 "includes/Linker.php"
- 找到 "function getExternalLinkAttributes"
- 在下面一段代码之後
$r = ($class != '') ? " class='$class'" : " class='external'";
增加以下代码:
$r .= " target=\"_blank\"";
这样就能让所有的外部链接以新窗口形式打开了。
由于MediaWiki的页面缓冲机制,可能造成这个修改的效果不能迅速完全反映出来。
如何清除页面缓冲?
- 在普通页面的网址后面添加“&action=purge”参数可以更新服务器缓冲数据,这可能需要几分钟之后才能见到效果。
- 在LocalSettings.php中设置$wgCacheEpoch全局变量,强制现有缓冲过期(参见DefaultSettings.php)
信息设定说明
mediawiki:sidebar的原始信息如下:
* navigation
** mainpage|mainpage
** portal-url|portal
** currentevents-url|currentevents
** recentchanges-url|recentchanges
** randompage-url|randompage
** helppage|help
** sitesupport-url|sitesupport
第一行(一个前导*)表示导航栏的名称,其提示文本在“mediawiki:navigation”页面中修改,也可以直接输入文字信息(文字不能与内部mediawiki参数页面重名)。
后续行(两个前导*)表示实际导航栏的内容,其格式为“链接网址|显示文本”。其中,链接网址有三种类型:
- 直接输入http网址,例如直接输入“http://www.allwiki.com/bbs”
- 文章页面标题,例如输入“天下维客”代表站内文章“[[天下维客]]”的网址
mediawiki
名字空间的参数页,例如输入“mainpage”代表文字信息参数页面“[[mediawiki:mainpage]]”的网址。此类字串还有
helppage、portal-url等,请到special:allmessages里面查看更多的此类字串。
显示文本的设定与导航栏名称设定类似,可以:
- 直接输入文字信息
- 使用mediawiki名字空间参数页的标题缩写,例如上文默认文本中 的“randompage”、“sitesupoort”分别代 表“[[mediawiki:randompage]]”和“ [[mediawiki:sitesupport]]”。
用户可根据需求删除/增加mediawiki:sidebar页面中的项目,修改后左侧导航栏就会发生相应改变。(本方法适用于mediawiki默认的monobook皮肤风格)
Mediawiki提示信息修改
在mediawiki安装完成之后,界面上仍然会有很多英文提示信息(即使选择了zh-cn语种)。这是正常的,需要站长对这些信息进行本地化修改。
MediaWiki的大部分界面信息存放在Special:Allmessages里面,包括界面的文字、链接、气泡提示、热键等。只有极少量的内容放在localsettings.php中。
系统界面修改方法
Special:Allmessages是一个称为“系统界面”的特殊页面,可以在搜索框中输 入“Special:Allmessages”来直接访问。也可以访问特殊页面下的系统界面.
当发现mediawiki中的提示信息为英文时,请进入该页面,搜索找到相应信息,然后点击表格左栏中链接进行修改。
请注意:必须以站长或者管理员身份登录后才能修改界面信息!
常用提示信息
首页的标题:
MediaWiki:Mainpage
,可改为“天下维客首页”之类,修改后网站将采用指定的文章作为首页。
页脚的Privacy policy:
MediaWiki:Privacy
,网站的隐私政策,可改为相应文章标题(如“隐私政策”)或“-”禁止显示本项。
页脚的Disclaimers:
MediaWiki:Disclaimers
,网站的免责声明,可改为相应文章标题(如“天下维客免责声明”)或“-”禁止显示本项。
浏览器标题栏提示:
MediaWiki:pagetitle
,请按需求修改(如“$1 - allwiki - 维客家园”,其中$1代表文章名称)
- 搜索结果页面中增加新建页面提示:参考本站nogomatch设置进行修改(仅对"进入"按钮有效,"搜索"按钮尚未解决)
- 修改页面左侧工具栏中的“帮助”链接:参见本站helppage设置, 将“wikipedia:帮助”改为本地名字空间,例如“天下维 客”、“help:帮助”图解过程(超级菜鸟可以考虑参阅^_^)
繁简共存版本的界面修改
对于安装时选用zh语种进行繁简并存的系统,对于同一条提示信息应同时修改6个版本:
- mediawiki:xxx
- mediawiki:xxx/zh
- mediawiki:xxx/zh-cn
- mediawiki:xxx/zh-tw
- mediawiki:xxx/zh-hk
- mediawiki:xxx/zh-sg
如有修改不到的话,则使用相应语种浏览器的用户(或用户在参数设置页面里选择不同语言时),会看到未修改的提示信息。
这就是为什么安装时不推荐zh语种进行繁简共存的原因。
要更改一个用户所属的用户组, 请使用管理员(sysop)身份登录,然后到Special:Userrights(用户权限管理)。每个用户组都可以被赋予以下权限(许可)的一个组合,同时还可以设定一些用户本身的权限分配!
如何设定/取消Sysop(管理员)权限?
对于1.5以上版本:
到Special:Userrights
页面,输入用户名,在列表中选择"sysop"权限即可;再次选定并确认则取消管理员权限。注意仅有"Bureaucrat"(行政管理员)权限的帐号才能进行以上设定。