· 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: 문태준

ID
Password
Join
By failing to prepare, you are preparing to fail.


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.0073 sec