Setting user rights in MediaWiki: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
No edit summary
 
(→‎修改 LocalSetting.php: add 關閉帳號註冊)
 
(36 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This is partial translation of Meta:[http://meta.wikimedia.org/wiki/Setting_user_rights_in_MediaWiki Setting user rights in MediaWiki]. You may click the right link for latest information. Please notice that the '''translated/derivated content is available under [http://www.gnu.org/copyleft/fdl.html GNU Free Documentation License]''' which the same with the original work.
{{Template:MediaWiki Installation}}
 
This is partial translation of Meta:[http://meta.wikimedia.org/wiki/Setting_user_rights_in_MediaWiki Setting user rights in MediaWiki]. You may click the link for the latest information. Please notice that the '''translated/derivated content is available under [http://www.gnu.org/copyleft/fdl.html GNU Free Documentation License]''' which the same with the original work.


== 準備 ==
== 準備 ==
Line 6: Line 8:


== 修改 LocalSetting.php ==
== 修改 LocalSetting.php ==
將以下設定插入 LocalSetting.php
{{Template:Wiki version | wiki_engine = MediaWiki | version = 1.15  }}
=== 狀況A: 有登錄的使用者才能編輯頁面 ===
$wgGroupPermissions['*']['edit'] = false;
#登錄的使用者才能編輯頁面,未登錄的訪客僅能觀看頁面內容
=== 狀況B: 匿名訪客僅能讀取部分頁面(wgWhitelistRead設定值),有登錄的使用者能讀取與編輯多數頁面 ===
<pre>
$wgWhitelistRead = array( "Main Page", "Special:Userlogin", "Special:Recentchanges", "Help:Contents", "MediaWiki:Monobook.css" );
#設定匿名訪客僅能讀取的頁面名稱清單
$wgGroupPermissions['*'    ]['createaccount']  = true;
#設定匿名訪客能否註冊帳號,若要關閉註冊帳號,改為false
$wgGroupPermissions['*'    ]['read']            = false;
#設定匿名訪客能否讀取($wgWhitelistRead 白名單以外的)頁面
$wgGroupPermissions['*'    ]['edit']            = false;
#設定匿名訪客能否編輯頁面
</pre>
=== 狀況C: 屬於managers的使用者才能觀看與編輯特定文章 ===
<pre>
$wgGroupPermissions['*']['read'] = false; //設定未登入的匿名訪客,無法觀看任何頁面。
$wgGroupPermissions['user']['read'] = false;
//設定登入的使用者,無法觀看任何頁面。除非是有在$wgWhitelistRead的頁面名稱清單內。
$wgWhitelistRead = array( "Main Page", "Special:Userlogin", "Special:UserLogout" ); 
//設定登入的匿名訪客 和 登入的使用者,僅能讀取的頁面名稱清單。
$wgGroupPermissions['managers']['read']         = true;  //設定managers群組的使用者,可以觀看(及編輯)所有頁面。
define("NS_OFFICIAL", 100);
define("NS_OFFICIAL_TALK", 101);
$wgExtraNamespaces =
    array(100 => "Official",
          101 => "Official_talk",
    );
$wgNamespaceProtection[NS_OFFICIAL]      = array( 'official-edit' );
$wgNamespaceProtection[NS_OFFICIAL_TALK] = array( 'official-talk-edit' );
$wgGroupPermissions['managers']['official-edit'] = true; //設定登入的managers群組的使用者,可以編輯Official namespace的頁面 (例如NS_OFFICIAL:page_name)。
$wgGroupPermissions['managers']['official-talk-edit'] = true; ////設定登入的managers群組的使用者,可以編輯Official namespace的討論頁面(例如Talk:NS_OFFICIAL:page_name)。
</pre>
參考資料:
# [http://www.mediawiki.org/wiki/Manual:$wgNamespaceProtection Manual:$wgNamespaceProtection - MediaWiki]
# [http://www.mediawiki.org/wiki/Manual:Preventing_access#Restrict_viewing_of_all_pages Restrict viewing of all pages]
=== 狀況D: 關閉帳號註冊 ===
<pre>
$wgGroupPermissions['*']['createaccount'] = false;
</pre>
== MediaWiki 1.4+ ==
適用版本: MediaWIki 版本: 1.4 or older
=== 準備 ===
* 支援Unicode的編輯器
* 請記得文件格式編譯成'''UTF-8(無BOM)'''。
=== 修改 LocalSetting.php ===
將以下設定插入 LocalSetting.php
將以下設定插入 LocalSetting.php
<pre>
<pre>
Line 28: Line 100:
* "Wikipedia:Help" 出現在左側導覽選單的位置,如果MediaWiki選中文安裝方式,預設中文翻譯是 '''維基百科:幫助'''
* "Wikipedia:Help" 出現在左側導覽選單的位置,如果MediaWiki選中文安裝方式,預設中文翻譯是 '''維基百科:幫助'''
** 有些MediaWiki是 Help:Contents 或 幫助:Contents
** 有些MediaWiki是 Help:Contents 或 幫助:Contents
** 由於有次更新(from 1.3.11 to 1.4.8)時,該頁面內容消失,所以本站暫時將它redirect至Help頁面
** 由於MediaWiki有次更新(from v1.3.11 to v1.4.8)時,本站該頁面內容消失,所以本站暫時將它redirect至Help頁面
 
中文預設值
 
$wgWhitelistRead = array ("首頁", "特殊:Userlogin", "維基百科:幫助");


所以如果要在本站啟用該選項,設定值應為
所以如果要在本站啟用該選項,設定值應為
Line 34: Line 110:
  $wgWhitelistRead = array ("共筆首頁", "特殊:Userlogin", "維基百科:幫助", "Help");
  $wgWhitelistRead = array ("共筆首頁", "特殊:Userlogin", "維基百科:幫助", "Help");


== 相關頁面 ==
== 相關資料 ==
* [[MediaWiki localization]] - 修改MediaWiki的介面文字
* [http://planetoid.info/weblog/2005/10/10/000521.html 與Wiki Spam bot奮戰] (適用版本: MediaWiki v1.4.x)
 
* [http://www.mediawiki.org/wiki/Manual:User_rights Manual:User rights - MediaWiki] {{access | date = 2011-02-26 }}
== 參考資料 ==
** [http://www.mediawiki.org/wiki/Manual:Preventing_access Manual:Preventing access - MediaWiki]
* [http://meta.wikimedia.org/wiki/Preventing_Access Preventing Access - Meta]
** [http://www.mediawiki.org/wiki/Manual:User_rights_management Manual:User rights management - MediaWiki]
* [http://meta.wikimedia.org/wiki/Setting_user_rights_in_MediaWiki Setting user rights in MediaWiki - Meta]
* [http://www.mediawiki.org/wiki/Category:User_rights_extensions Category:User rights extensions - MediaWiki]


[[Category:Wiki]]
[[Category:MediaWiki]] [[Category:AntiSpam]]

Latest revision as of 17:48, 16 May 2012

Ψ 架設Wiki之前 --> MediaWiki安裝 --> 本地化設置 --> 介面修改 --> 功能擴充 --> 備份與管理 | 工具箱 Ψ

This is partial translation of Meta:Setting user rights in MediaWiki. You may click the link for the latest information. Please notice that the translated/derivated content is available under GNU Free Documentation License which the same with the original work.

準備[edit]

修改 LocalSetting.php[edit]

將以下設定插入 LocalSetting.php

MediaWiki v.1.15+


狀況A: 有登錄的使用者才能編輯頁面[edit]

$wgGroupPermissions['*']['edit'] = false;
#登錄的使用者才能編輯頁面,未登錄的訪客僅能觀看頁面內容

狀況B: 匿名訪客僅能讀取部分頁面(wgWhitelistRead設定值),有登錄的使用者能讀取與編輯多數頁面[edit]

 $wgWhitelistRead = array( "Main Page", "Special:Userlogin", "Special:Recentchanges", "Help:Contents", "MediaWiki:Monobook.css" );
 #設定匿名訪客僅能讀取的頁面名稱清單

 $wgGroupPermissions['*'    ]['createaccount']   = true;
 #設定匿名訪客能否註冊帳號,若要關閉註冊帳號,改為false

 $wgGroupPermissions['*'    ]['read']            = false;
 #設定匿名訪客能否讀取($wgWhitelistRead 白名單以外的)頁面

 $wgGroupPermissions['*'    ]['edit']            = false;
 #設定匿名訪客能否編輯頁面

狀況C: 屬於managers的使用者才能觀看與編輯特定文章[edit]

$wgGroupPermissions['*']['read']		= false; //設定未登入的匿名訪客,無法觀看任何頁面。

$wgGroupPermissions['user']['read']		= false; 
//設定登入的使用者,無法觀看任何頁面。除非是有在$wgWhitelistRead的頁面名稱清單內。

$wgWhitelistRead = array( "Main Page", "Special:Userlogin", "Special:UserLogout" );  
//設定登入的匿名訪客 和 登入的使用者,僅能讀取的頁面名稱清單。

$wgGroupPermissions['managers']['read']	        = true;  //設定managers群組的使用者,可以觀看(及編輯)所有頁面。

define("NS_OFFICIAL", 100);
define("NS_OFFICIAL_TALK", 101);
 
$wgExtraNamespaces = 
    array(100 => "Official",
          101 => "Official_talk",
    );
 
$wgNamespaceProtection[NS_OFFICIAL]      = array( 'official-edit' );
$wgNamespaceProtection[NS_OFFICIAL_TALK] = array( 'official-talk-edit' );
 
$wgGroupPermissions['managers']['official-edit'] = true; //設定登入的managers群組的使用者,可以編輯Official namespace的頁面 (例如NS_OFFICIAL:page_name)。
$wgGroupPermissions['managers']['official-talk-edit'] = true; ////設定登入的managers群組的使用者,可以編輯Official namespace的討論頁面(例如Talk:NS_OFFICIAL:page_name)。


參考資料:

  1. Manual:$wgNamespaceProtection - MediaWiki
  2. Restrict viewing of all pages


狀況D: 關閉帳號註冊[edit]

$wgGroupPermissions['*']['createaccount'] = false;

MediaWiki 1.4+[edit]

適用版本: MediaWIki 版本: 1.4 or older

準備[edit]

  • 支援Unicode的編輯器
  • 請記得文件格式編譯成UTF-8(無BOM)

修改 LocalSetting.php[edit]

將以下設定插入 LocalSetting.php

# 選擇誰可以編輯頁面: true 代表有登錄的使用者才能編輯頁面
$wgWhitelistEdit = true;

# 匿名的(也就是沒有登錄的)使用者可以看見的頁面
$wgWhitelistRead = array ("首頁", "特殊:Userlogin", "維基百科:幫助");

# 指定誰可以設立新的使用者帳號: 0 代表不可, 1 代表可以
$wgWhitelistAccount = array ( 'user' => 0, 'sysop' => 1, 'developer' => 1 );

$wgWhitelistRead 說明[edit]

英文版的MediaWiki

$wgWhitelistRead = array ("Main Page", "Special:Userlogin", "Wikipedia:Help");
  • "Main Page" 出現在左側導覽選單的位置,如果MediaWiki選中文安裝方式,預設中文翻譯是 首頁 ,本站共筆後來更改成"共筆首頁"
  • "Special:Userlogin" 出現在上方功能列的位置,預設中文翻譯是 特殊:Userlogin
  • "Wikipedia:Help" 出現在左側導覽選單的位置,如果MediaWiki選中文安裝方式,預設中文翻譯是 維基百科:幫助
    • 有些MediaWiki是 Help:Contents 或 幫助:Contents
    • 由於MediaWiki有次更新(from v1.3.11 to v1.4.8)時,本站該頁面內容消失,所以本站暫時將它redirect至Help頁面

中文預設值

$wgWhitelistRead = array ("首頁", "特殊:Userlogin", "維基百科:幫助");

所以如果要在本站啟用該選項,設定值應為

$wgWhitelistRead = array ("共筆首頁", "特殊:Userlogin", "維基百科:幫助", "Help");

相關資料[edit]