
通过下面介绍的设置方法,可以阻止匿名用户注册,又或者阻止他们编辑,要求注册后才能够编辑,还可以设定注册前匿名用户可以查看那些页面。
而在设置新用户的注册之后,管理人员仍可通过特殊页面手动为其他人创建用户。而用户的权限,则可以通过特殊页面内的User rights
management进行管理。
LocalSettings.php用户权选设置相关选项
基本语法
$wgGroupPermissions['group']['right']
= true /* 或者 false */
group代表用户组,right 是权限。如果是true
,就说明该用户组拥有该项权限,如果是false,就说明该用户组没有该项权限。
如果一个用户属于多个用户组,那么该用户拥有这些用户组中最高的权限。所有用户(包括未注册用户)包含在*用户组中,所有注册的用户包含在user用户组中。如果需要设置匿名用户不能编辑但是注册用户可以编辑,可以采取这样的方法,首先禁止所有用户编辑:
$wgGroupPermissions['*']['edit']
= false
然后允许注册用户编辑:
$wgGroupPermissions['user']['edit'] = true
//
Implicit group for all visitors
$wgGroupPermissions['*']['createaccount'] =
true
$wgGroupPermissions['*']['read'] =
true
$wgGroupPermissions['*']['edit'] =
true
$wgGroupPermissions['*']['createpage'] =
true
$wgGroupPermissions['*']['createtalk'] =
true
$wgGroupPermissions['*']['writeapi'] =
true
//$wgGroupPermissions['*']['patrolmarks'] = false// let anons see
what was patrolled
// Implicit group for all logged-in
accounts
$wgGroupPermissions['user']['move'] =
true
$wgGroupPermissions['user']['move-subpages'] =
true
$wgGroupPermissions['user']['move-rootuserpages'] = true// can move
root userpages
//$wgGroupPermissions['user']['movefile'] = true// Disabled
for now due to possible bugs and security
concerns
$wgGroupPermissions['user']['read'] =
true
$wgGroupPermissions['user']['edit'] =
true
$wgGroupPermissions['user']['createpage'] =
true
$wgGroupPermissions['user']['createtalk'] =
true
$wgGroupPermissions['user']['writeapi'] =
true
$wgGroupPermissions['user']['upload'] =
true
$wgGroupPermissions['user']['reupload'] =
true
$wgGroupPermissions['user']['reupload-shared'] =
true
$wgGroupPermissions['user']['minoredit'] =
true
$wgGroupPermissions['user']['purge'] = true// can use ?action=purge
without clicking "ok"
$wgGroupPermissions['user']['sendemail'] = true
//
Implicit group for accounts that pass
$wgAutoConfirmAge
$wgGroupPermissions['autoconfirmed']['autoconfirmed'] =
true
// Users with bot privilege can have their edits hidden
// from
various log pages by default
$wgGroupPermissions['bot']['bot'] =
true
$wgGroupPermissions['bot']['autoconfirmed'] =
true
$wgGroupPermissions['bot']['nominornewtalk'] =
true
$wgGroupPermissions['bot']['autopatrol'] =
true
$wgGroupPermissions['bot']['suppressredirect'] =
true
$wgGroupPermissions['bot']['apihighlimits'] =
true
$wgGroupPermissions['bot']['writeapi'] =
true
#$wgGroupPermissions['bot']['editprotected'] = true// can edit all
protected pages without cascade protection enabled
// Most extra permission
abilities go to this group
$wgGroupPermissions['sysop']['block'] =
true
$wgGroupPermissions['sysop']['createaccount'] =
true
$wgGroupPermissions['sysop']['delete'] =
true
$wgGroupPermissions['sysop']['bigdelete'] = true// can be separately
configured for pages with >$wgDeleteRevisionsLimit
revs
$wgGroupPermissions['sysop']['deletedhistory'] = true// can view
deleted history entries, but not see or restore the
text
$wgGroupPermissions['sysop']['deletedtext'] = true// can view deleted
revision text
$wgGroupPermissions['sysop']['undelete'] =
true
$wgGroupPermissions['sysop']['editinterface'] =
true
$wgGroupPermissions['sysop']['editusercss'] =
true
$wgGroupPermissions['sysop']['edituserjs'] =
true
$wgGroupPermissions['sysop']['import'] =
true
$wgGroupPermissions['sysop']['importupload'] =
true
$wgGroupPermissions['sysop']['move'] =
true
$wgGroupPermissions['sysop']['move-subpages'] =
true
$wgGroupPermissions['sysop']['move-rootuserpages'] =
true
$wgGroupPermissions['sysop']['patrol'] =
true
$wgGroupPermissions['sysop']['autopatrol'] =
true
$wgGroupPermissions['sysop']['protect'] =
true
$wgGroupPermissions['sysop']['proxyunbannable'] =
true
$wgGroupPermissions['sysop']['rollback'] =
true
$wgGroupPermissions['sysop']['trackback'] =
true
$wgGroupPermissions['sysop']['upload'] =
true
$wgGroupPermissions['sysop']['reupload'] =
true
$wgGroupPermissions['sysop']['reupload-shared'] =
true
$wgGroupPermissions['sysop']['unwatchedpages'] =
true
$wgGroupPermissions['sysop']['autoconfirmed'] =
true
$wgGroupPermissions['sysop']['upload_by_url'] =
true
$wgGroupPermissions['sysop']['ipblock-exempt'] =
true
$wgGroupPermissions['sysop']['blockemail'] =
true
$wgGroupPermissions['sysop']['markbotedits'] =
true
$wgGroupPermissions['sysop']['apihighlimits'] =
true
$wgGroupPermissions['sysop']['browsearchive'] =
true
$wgGroupPermissions['sysop']['noratelimit'] =
true
$wgGroupPermissions['sysop']['versiondetail'] =
true
$wgGroupPermissions['sysop']['movefile'] =
true
#$wgGroupPermissions['sysop']['mergehistory'] = true
// Permission
to change users' group
assignments
$wgGroupPermissions['bureaucrat']['userrights'] =
true
$wgGroupPermissions['bureaucrat']['noratelimit'] = true
//
Permission to change users' groups assignments across
wikis
#$wgGroupPermissions['bureaucrat']['userrights-interwiki'] =
true
// Permission to export pages including linked pages regardless of
$wgExportMaxLinkDepth
#$wgGroupPermissions['bureaucrat']['override-export-depth']
= true
#$wgGroupPermissions['sysop']['deleterevision'] = true
// To hide
usernames from users and Sysops
#$wgGroupPermissions['suppress']['hideuser']
= true
// To hide revisions/log items from users and
Sysops
#$wgGroupPermissions['suppress']['suppressrevision'] = true
// For
private suppression log
access
#$wgGroupPermissions['suppress']['suppressionlog'] = true
/**
*
The developer group is deprecated, but can be activated if need be
* to use
the 'lockdb' and 'unlockdb' special pages. Those require
* that a lock file
be defined and creatable/removable by the web
* server.
*/
#
$wgGroupPermissions['developer']['siteadmin'] = true
阻止新用户注册
•
$wgGroupPermissions['*' ]['createaccount'] =
false
注意:阻止新用户注册,此时管理员可以到特殊页面上的用户登录页面(Special:UserLogin)里,输入希望为其建立帐户的某人的用户名
与电子邮件地址,然后点击通过eMail(by
email)按钮递交,系统将创建帐号并将随机生成的密码发送到指定email里。
设定匿名用户可看的页面
$wgWhitelistRead =
array (”Main Page”, “Special:Userlogin”, “Wikipedia:Help”)
匿名用户只能看到Main
Page、登录页面以及帮助页面。
修改其他的例子:$wgWhitelistRead = array (”首页”, “Special:Userlogin”,
“某某Wiki:Help”)
设置匿名用户权限
• $wgGroupPermissions['*' ]['createaccount'] =
false
• $wgGroupPermissions['*' ]['read'] = true
•
$wgGroupPermissions['*' ]['edit'] = false
• $wgGroupPermissions['user'
]['createaccount'] = true
• $wgGroupPermissions['user' ]['edit'] =
true
设置匿名用户可读内容
• $wgWhitelistRead = array( "Main Page",
"Special:Userlogin" )
• $wgGroupPermissions['*' ]['read'] =
false
注意:具体需要对应自己的站点链接,而对于多字节语言的MediaWiki,例如中文首页链接index.php?title=%E9%A6%96%E9%A1%B5,这首页中文字符PHP可能无法正确解码。需要利用urldecode()函数转换一下,写为:
•
$wgWhitelistRead = array( urldecode("%E9%A6%96%E9%A1%B5")
禁止匿名用户编辑
•
#$wgGroupPermissions = array()
• $wgGroupPermissions['*createaccount'] =
false
• $wgGroupPermissions['*']['read'] = true
•
$wgGroupPermissions['*']['edit'] =
false
“编辑”标签仍会显示,但匿名用户点击时会被提示要求进行登录。
等式右侧的值决定各组成员的权限。左侧第一方括号内的’*'代表包括匿名用户在内的所有成员。登录用户控制存放在’user’组,这些将综合决定user_groups数据表中的成员权限。
这些设置取代了以前的wgWhitelistAccount和wgWhitelistEdit。
如此设定后,用户连首页和登录页面也看不到了。
MEDIAWIKI 的安装很简单,首先下载 MediaWiki 的压缩包,然后解压缩到 XAMPP 的 htdocs 目录下,根据提示输入 MYSQL 的配置信息,数据库创建完成后就可以使用了。关于配置,首先是左上角的 LOGO , 使用自己的图片替换 mediawiki/skins/common/images/wiki.png 文件即可。
MEDIAWIKI 部署的目的是项目组内部使用,禁止游客编辑和查看,因此打开 mediawiki/LocalSettings.php 在最后添加如下三行:
$wgGroupPermissions['*']['createaccount'] = false
$wgGroupPermissions['*']['edit'] = false
$wgGroupPermissions['*']['read'] = false
这样就禁止了游客注册账号,同时禁止了游客查看和编辑内容的权限。
最后是配置短路径,就是标题看起来是如下的样子:
http://www.arctos.net/wiki/首页
而不是下面这种样子http://www.arctos.net/mediawiki/index.php?title=首页
最简单的配置方法是,在 mediawiki/LocalSettings.php 的最后添加如下三行:
$wgScript = "$wgScriptPath/index.php"
$wgArticlePath = '/wiki/$1'
$wgUsePathInfo = true
需要注意的 $wgScriptPath 指向实际的 mediawiki 虚拟目录,而 $wgArticlePath 的虚拟目录一定要与 mediawiki 不同。
然后我们在 XAMPP 的 htdocs 目录下新建一个 .htaccess 文件,里面内容如下:
RewriteEngine On
RewriteRule ^wiki/(.*)$ /mediawiki/index.php?title=$1 [PT,L,QSA]
RewriteRule ^wiki/*$ /mediawiki/index.php [L,QSA]
RewriteRule ^/*$ /mediawiki/index.php [L,QSA]
重启 apache ,进入 wiki 就可以看到短路径名称了。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)