Mediawiki

From JCFWiKi

Jump to: navigation, search

그림:check.gif

  • 산출물 : JCF3.0™agile 통합 개발환경-Mediawiki 어드민가이드
  • 작성자: 고경철
  • 작성일 : 2007/12/03
  • 버전 : 0.9
  • 개정이력 :

Copyright © 2007 Daewoo Information Systems Co., Ltd.

[편집] mediawiki의 설치

  1. APM_Setup_MySQL5.0 과 mediawiki1.10.0.tar.gz를 설치한 다음에 APM 압축을 풀다.
  2. C 폴더에 APM_Setup 폴더 생긴다. 여기안의 C:\APM_Setup\htdocs에 mediawiki 압축을 풀어서 넣고 mediawiki...를 mediawiki로 이름을 바꾼다.
  3. C:\APM_Setup\Command에서 set_service_apache.cmd 랑 set_service_mysql.cmd 두번씩 클릭하여 실행하고 server_start.cmd를 실행한다.
  4. Web의 http://localhost/myadmin/index.php에 접속한다.
  5. id는 root고 pas은 없이 접속한다. ->http://localhost/myadmin/index.php?lang=ko-utf8&target=import.php&token=14e735fcb9fed18a17f632b7890c75ca
  6. 새 데이터베이스를 만든다.
 create database dwikidb(db 이름);
 grant create, select, insert, update, delete, lock tables on wikidb.* to 'wikiuser'@'localhost' identified by 'password';
 flush privileges;
  1. password를 만든다. http://localhost/myadmin/index.php?lang=ko-utf-8&token=14e735fcb9fed18a17f632b7890c75ca 사용권한을 바꿔서 passwort를 만든다.
  2. 마지막 C:\APM_Setup\htdocs\mediawiki\config에 있는 local... 폴더를 상위폴더로 옮긴다.

[편집] mediawiki 플러그인 설치

그림:check.gif

  • 다양한 플러그인 목록은 http://www.mediawiki.org/wiki/Category:Extensions 사이트에서 검색할 수 있다.
  • localsetting.php에서 해당 플러그인의 경로를 추가하고 /mediawiki/extension/폴더에 플러그인 파일을 넣는다.


[편집] mediawiki 보안 가이드

localsetting.php를 다음과 같이 수정하여 페이지 접속에 대한 정책을 나타낼 수 있다.

그림:warning.gif

  • 사용자의 권한 부여에 대한 부분은 sysop으로 로그인하여 특수기능문서>User rights management 에서 할수 있다.
  • 권한 관리는 서버 소스를 수정해야 한다.
  • Restrict account creation
 # Prevent new user registrations except by sysops
 $wgGroupPermissions['*']['createaccount'] = false;
  • To prevent even sysops from creating accounts:
# Prevent new user registrations by anyone
$wgGroupPermissions['*']['createaccount'] = false;
$wgGroupPermissions['sysop']['createaccount'] = false;
  • Restrict editing of all pages
# Disable anonymous editing
 $wgGroupPermissions['*']['edit'] = false;

 # Disable editing by all non-sysop users
 $wgGroupPermissions['*']['edit'] =
 $wgGroupPermissions['user']['edit'] = false;
 $wgGroupPermissions['sysop']['edit'] = true;

 # Disable editing by absolutely everyone
 $wgGroupPermissions['*']['edit'] =
 $wgGroupPermissions['user']['edit'] = 
 $wgGroupPermissions['sysop']['edit'] = false;
  • Restrict editing of an entire namespace
# Only allow autoconfirmed users to edit Project namespace
 $wgNamespaceProtection[NS_PROJECT] = array( 'autoconfirmed' );

 # Don't allow anyone to edit non-talk pages until they've confirmed their
 # e-mail address (assuming we have no custom namespaces and allow edits
 # from non-emailconfirmed users to start with)
 $wgNamespaceProtection[NS_MAIN]     = $wgNamespaceProtection[NS_USER]  =
 $wgNamespaceProtection[NS_PROJECT]  = $wgNamespaceProtection[NS_IMAGE] =
 $wgNamespaceProtection[NS_TEMPLATE] = $wgNamespaceProtection[NS_HELP]  =
 $wgNamespaceProtection[NS_CATEGORY] = array( 'emailconfirmed' );

 # Only allow sysops to edit "Policy" namespace
 $wgGroupPermissions['sysop']['editpolicy'] = true;
 $wgNamespaceProtection[NS_POLICY] = array( 'editpolicy' );
  • Restrict editing for certain IP ranges
    • ip block 메뉴 이용
  • Restrict editing by a particular user
    • syssop이 해당페이지의 protect를 적용함.
  • Restrict page creation
# Anonymous users can't create pages
$wgGroupPermissions['*']['createpage'] = false;
# Only users with accounts four days old or older can create pages
# (like Wikipedia!).  Requires MW 1.6 or higher.
$wgGroupPermissions['*'            ]['createpage'] =
$wgGroupPermissions['user'         ]['createpage'] = false;
$wgGroupPermissions['autoconfirmed']['createpage'] = true;
  • Restrict viewing of all pages
# Disable reading by anonymous users
$wgGroupPermissions['*']['read'] = false;
# But allow them to read the Main Page, login page, and JS/CSS pages
$wgWhitelistRead = array( ":Main Page", "Special:Userlogin", "-", "MediaWiki:Monobook.css" );

# Same as previous, but for French (be careful of encoding!)
# $wgWhitelistRead = array( ":Page Principale", "Special:Userlogin", utf8_encode('Aide en français'));

{{#PAGENAME: Help:Foo }} 관련 사이트: http://www.mediawiki.org/wiki/Manual:Preventing_access