· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
위키설치하기

위키설치 및 사용방법


1. 위키설치 개략

위키를 설치하는 방법에 대한 안내입니다.

2. 설치방법

MoniWiki:MoniWiki/DownLoad에 다운받음


3. 설정파일

모니위키 설치된 곳의 config.php 파일을 직접 수정하거나 웹인터페이스를 이용할 수 있다.

  • 내용을 아는 경우에는 설정파일을 직접 수정하는 것이 편하다.
  • 위키디렉토리의 퍼미션을 2777 혹은 777로 설정(하위폴더 포함)
  • data폴더의 퍼미션도 2777 혹은 777로 설정
  • 웹인터페이스에서 변경 http://해당도메인/위키디렉토리/monisetup.php
  • moniwiki설치디렉토리/config.php 변경
  • 퍼미션 문제로 웹에서 설정을 할 경우에는 monisetup.sh 를 실행시켜 쓰기 가능하도록 하고 웹에서 변경후에는 보안을 위하여 secure.sh (644 변경 및 설정파일 복사)를 실행해준다.
[taejun@localhost moniwiki]$ sh ./monisetup.sh
+-------------------------------------+
|    MoniWiki configuration script    |
+-------------------------------------+

 Please enter the permission 777 or 2777(default 2777):
*** chmod 777 config.php
*** chmod 2777 . ./data
 Did you really want to make directories with permission '2777'(N/y):

Please open monisetup.php again


[taejun@localhost moniwiki]$ sh ./secure.sh

+-------------------------------------+
|    MoniWiki configuration script    |
+-------------------------------------+

*** chmod 644 config.php

Your MoniWiki is now secure and cannot be configured.
If you wish to reconfigure it, execute the following command:

    % sh monisetup.sh

and open 'monisetup.php' on a web browser.

4. config.php 에서 유용한 옵션

상세한 설명은 Moni Wiki Options( MoniWiki:MoniWikiOptions ) 참고
  • {*} 한글사용 : utf-8을 사용하려 할 경우 lang 을 ko_KR.UTF-8 로 지정해야 프로그램의 메뉴등이 한글로 나오며 문서의 경우는 charset 을 utf-8로 설정해야한다. 문서의 charset 만 utf-8로 하면 프로그램의 메뉴은 euc-kr로 되어있기때문에 깨져보인다.
  • $frontpage : 대문을 지정한다. 기본값은 FrontPage로 가게되어있으며 필요하면 변경한다.
  • $sitename : 위키제목변경. 적절한 제목으로 변경
  • $edit_rows : 위키편집줄수. 약간 늘리는게 편한 듯 하다.
  • $lang : 언어설정. 기본값 auto 로 브라우저 설정을 따른다. utf8을 사용하는 경우 ko_KR.UTF-8 로 바꾸어야 한글이 제대로 출력이 된다. locale 디렉토리밑에 각 언어로 바꾸는 파일이 있으며 lang 에서 설정한 것을 locale 디렉토리에서 읽어온다.
  • $default_language : 현재 ko. 이건 한글메뉴등을 보여주는 듯하다.
  • $charset : 문자셋. 기본값인 utf-8 사용함. 이는 웹에서 meta 에 뿌려주는 언어를 지정한다.
  • $auto_linebreak : 기본값은 0이고, 1로 하면 선별적으로 각 줄에 <br/>이 더해진다. 1로 하면 일반 텍스트문서를 복사해서 넣을때 자동으로 줄바꿈이 되어 편리한점은 있다.
  • $pds_allowed
    • UploadFile에서 허용되는 확장자를 지정한다.
    • 기본값은 'png|jpg|jpeg|gif|mp3|zip|tgz|gz|txt|css|exe|hwp|pdf' 이며 필요에 따라 ppt, doc 등을 추가한다.
  • $use_sectionedit : 기본값은 0. 1로 설정하면 단락마다 edit 링크를 단다. 1로 해놓는것이 편리하다.
  • $use_smileys : {*} 이런 기호들을 쓸 수 있다.

5. 유용한 기능들

  • plugin 디렉토리를 보면 여러가지 부가기능들이 있다.
  • admin 패스워드 잃어버렸을 경우 : 프로그램 설치한 디렉토에서 아래의 프로그램을 실행시켜 나온 값을 config.php 의 $admin_passwd 에 넣어준다. 아래에서는 비밀번호를 newpassword 로 한 것이고 이것을 암호화하여 설정파일에 넣는 것이다.
$ tools/mkpasswd.pl newpassword
88v7OSgEkSL82
  • 템플릿만들기 : 템플릿은 사전에 특정 유형을 만들어놓는 것이다. '[a-z]Template$' 형태로 해서 페이지를 만들면 자동으로 템플릿에 등록이 된다. 불필요한 템플릿을 지우고 이렇게 만들어서 필요한 것만 사용하자!
  • 입력폼수정하기
    • http://kldp.net/forum/message.php?msg_id=10459
    • 먼저 EditTextForm 라는 페이지를 만든다.
    • 여기에 아래 내용을 넣는다. HelpOnEditing 은 편집에 대한 도움말이며 EditToolbar 가 그래픽툴바를 추가하는 것이다. Uploadfile 는 파일업로드 기능을 추가한다. EditHints 는 간단한 몇가지 문법을 보여주는 것이다. [[UploadedFiles]] 는 업로드한 파일을 지울 수 있으면 화면을 보여준다. 파일관리를 편리하게 할 수 있다.
HelpOnEditing
[[EditToolbar]]
#editform
[[UploadFile(js)]]
----
[[EditHints]]
----
[[UploadedFiles]]

5.2. 오른쪽메뉴 수정하기

<!> 모니위키 1.1.2에서 doc/theme.php.sample 파일의 문제가 있습니다. CVS버전에서는 이미 고쳐졌습니다.

  • 페이지편집, 정보보기등을 수정할 수 있다. 기본설정되어있는 것을 doc/theme.php.sample 파일을 조정하면 된다. config.php 에 이 파일을 include 하도록 해놓으면 된다. theme.php.sample 파일이 좀 이상하여 wiki.php 에서 관련된 부분을 보고 아래는 조정하였다.
  • icon 에서 FindPage, subscribe (메일발송), xml 로 보이는 부분은 뺐다.
  • Upload new Attachment "theme.php.txt.joon.txt" on the "위키설치"
[joon@intranet doc]$ pwd
/home/joon/html/moniwiki/doc
[joon@intranet doc]$ diff theme.php.joon theme.php.sample
2,3c2
< $iconset='moni2';
< $themeurl=$url_prefix;
---
> $iconset='moni';
5,19c4,17
< $ext='png';
< $icon['upper']="<img src='$imgdir/${iconset}/upper.$ext' alt='U' align='middle' border='0' />";
< $icon['edit']="<img src='$imgdir/${iconset}/edit.$ext' alt='E' align='middle' border='0' />";
< $icon['diff']="<img src='$imgdir/${iconset}/diff.$ext' alt='D' align='middle' border='0' />";
< $icon['del']="<img src='$imgdir/${iconset}/deleted.$ext' alt='(del)' align='middle' border='0' />";
< $icon['info']="<img src='$imgdir/${iconset}/info.$ext' alt='I' align='middle' border='0' />";
< $icon['rss']="<img src='$imgdir/${iconset}/rss.$ext' alt='RSS' align='middle' border='0' />";
< $icon['show']="<img src='$imgdir/${iconset}/show.$ext' alt='R' align='middle' border='0' />";
< $icon['find']="<img src='$imgdir/${iconset}/search.$ext' alt='S' align='middle' border='0' />";
< $icon['help']="<img src='$imgdir/${iconset}/help.$ext' alt='H' align='middle' border='0' />";
< $icon['www']="<img src='$imgdir/${iconset}/www.$ext' alt='www' align='middle' border='0' />";
< $icon['mailto']="<img src='$imgdir/${iconset}/email.$ext' alt='M' align='middle' border='0' />";
< $icon['create']="<img src='$imgdir/${iconset}/create.$ext' alt='N' align='middle' border='0' />";
< $icon['new']="<img src='$imgdir/${iconset}/new.$ext' alt='U' align='middle' border='0' />";
< $icon['updated']="<img src='$imgdir/${iconset}/updated.$ext' alt='U' align='middle' border='0' />";
---
> $icon['upper']="<img src='$imgdir/$iconset-upper.gif' alt='U' align='middle' border='0' />";
> $icon['edit']="<img src='$imgdir/$iconset-edit.gif' alt='E' align='middle' border='0' />";
> $icon['diff']="<img src='$imgdir/$iconset-diff.gif' alt='D' align='middle' border='0' />";
> $icon['del']="<img src='$imgdir/$iconset-deleted.gif' alt='(del)' align='middle' border='0' />";
> $icon['info']="<img src='$imgdir/$iconset-info.gif' alt='I' align='middle' border='0' />";
> $icon['rss']="<img src='$imgdir/$iconset-rss.gif' alt='RSS' align='middle' border='0' />";
> $icon['show']="<img src='$imgdir/$iconset-show.gif' alt='R' align='middle' border='0' />";
> $icon['find']="<img src='$imgdir/$iconset-search.gif' alt='S' align='middle' border='0' />";
> $icon['help']="<img src='$imgdir/$iconset-help.gif' alt='H' align='middle' border='0' />";
> $icon['www']="<img src='$imgdir/$iconset-www.gif' alt='www' align='middle' border='0' />";
> $icon['mailto']="<img src='$imgdir/$iconset-email.gif' alt='M' align='middle' border='0' />";
> $icon['create']="<img src='$imgdir/$iconset-create.gif' alt='N' align='middle' border='0' />";
> $icon['new']="<img src='$imgdir/$iconset-new.gif' alt='U' align='middle' border='0' />";
> $icon['updated']="<img src='$imgdir/$iconset-updated.gif' alt='U' align='middle' border='0' />";
21,24c19,22
< $icon['home']="<img src='$imgdir/${iconset}/home.$ext' alt='M' align='middle' border='0' />";
< $icon['xml']="<img src='$imgdir/${iconset}/xml.$ext' alt='X' align='middle' border='0' />";
< $icon['print']="<img src='$imgdir/${iconset}/print.$ext' alt='P' align='middle' border='0' />";
< $icon['attach']="<img src='$imgdir/${iconset}/attach.$ext' alt='@' align='middle' border='0' />";
---
> $icon['home']="<img src='$imgdir/$iconset-home.gif' alt='M' align='middle' border='0' />";
> $icon['xml']="<img src='$imgdir/$iconset-xml.gif' alt='X' align='middle' border='0' />";
> $icon['print']="<img src='$imgdir/$iconset-print.gif' alt='P' align='middle' border='0' />";
> $icon['attach']="<img src='$imgdir/$iconset-attach.gif' alt='@' align='middle' border='0' />";
33c31
< //   array("FindPage","",$icon['find']),
---
>    array("FindPage","",$icon['find']),
35,37c33,35
< //   array("","?action=subscribe",$icon['mailto']),
< //   array("HelpContents","",$icon['help']),
< //   array("","?action=format&amp;mimetype=text/xml",$icon['xml']),
---
>    array("","?action=subscribe",$icon['mailto']),
>    array("HelpContents","",$icon['help']),
>    array("","?action=format&amp;mimetype=text/xml",$icon['xml']),

6. 사용자 인증

모니위키에서 제공하는 MoniWiki:SecurityPlugin을 설정한다.

회사에서 별도의 인증을 사용한다면 아래의 형태처럼 하여 인증을 추가하면 된다. 디렉토리는 각자의 서버설정에 따라 다를 것이다.
 //  auth
 require_once("$DOCUMENT_ROOT/admin/include/auth.php");

Contributor: 문태준



sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2008-12-30 14:21:42
Processing time 0.0071 sec