이름 도쿠위키(DokuWiki)
종류 위키엔진
최신버전 2015-08-10a "Detritus"

1 개요[편집]

DokuWiki. 위키엔진 중의 하나. Document + Wikiwiki를 합성한 이름으로 위키위키의 기반 철학을 이어받았다. 德川家康을 위한 위키가 아니다. 책을 읽은 다음에 작성하는 위키도 아니다.[1]덕후위키도 아니다.
DB를 사용하지 않는 텍스트 파일 기반의 위키이며 설정이나 기본 사용법이 간단하고 설치 및 백업, 복구 등도 용이한데다가 ACL 기능을 기본적으로 탑재하고 있어 회원제나 완전 비공개 위키를 간단하게 만들 수 있다. 중소형이나 개인용 위키에 적합한 엔진이다. 파일 기반 위키답게 백업도 편리하여 data폴더를 통째로 복사하면 된다. 다만 DB를 사용하지 않아 대형 위키에서 사용하기에는 비 효율적이다.

버전별 명칭은 디스크월드의 캐릭터 이름을 가져오고 있으며, 주인공 린스윈드도 도쿠위키에선 상당한 구 버전이다. 최신 정식 버전은 2014-05-05 "Ponder Stibbons" 이다. 버전이 교체되면 관리자 로그인시 상단에 개발 릴리즈 버전과 최신 정식 버전의 알림이 뜬다.

다운로드 항목이 개편되어 다양한 옵션을 지원한다. 새버전의 변경점만 다운로드 하거나, 필요없는 언어팩을 제외거나, 인기있는 플러그인을 미리 포함해서 다운로드 할 수 있고 포터블용 도쿠위키도 통합되어 다운로드시 Include Web server 옵션을 체크하면 포터블 형태로 바로 사용가능하게 다운된다.[2]

리눅스(우분투,데비안)에서 도쿠위키를 로컬로 사용하려면 이 페이지를 참조하라. 약간의 팁을 말하자면 sudo apt-get install dokuwiki 로 설치하면 패스워드 설정란이 나오는데 패스워드 설정을 해주고 기타 설정을 해준뒤에 초기 아이디는 admin 패스워드는 아까 설정한 password로 로그인 하면된다. sudo dpkg-reconfigure dokuwiki 는 도쿠위키의 설정값을 재설정해주는 명령어이다. 만약 기존의 문서파일을 var/lib/dokuwiki/data/page폴더에 넣었을때 문서편집이 안된다면 해당폴더의 권한값을 변경해주면된다. php,mysql,apache2를 깐뒤에 var/www에 설치파일을 넣고 직접 설치해도 된다.

미디어위키에서 도쿠위키로 변환하는 스크립트는 여길 참조하라.

2 장점[편집]

  • 기본 기능과 메뉴의 한국어 번역이 비교적 잘 되어 있다. 만약 번역이 되어 있지 않은 메시지가 있다면 도쿠위키의 위쪽에 있는 Translate 메뉴로 들어가서 번역할 수 있다.
  • 상대적으로 설치가 간단하고 사용 방법도 쉬운 편이다.
  • 어드민 페이지가 잘 구성되어 있어 각종 설정 및 플러그인 설치/관리, 유저 관리 등이 용이하다.
  • 많은 수의 플러그인이 있어 기능 확장을 쉽게 할 수 있다. 플러그인은 사이트 내에서 개발 버전과 정식버전의 안정적 지원 유무를 알 수 있다.
  • 템플릿 기능으로 공개된 여러 템플릿을 사용해 쉽게 디자인을 바꿀 수 있다. [3]
  • DB가 아닌 텍스트 파일 기반이기 때문에 백업 및 복구가 쉽다.
  • 네임 스페이스를 기본 지원하여 문서의 분류가 용이하다.
  • 인덱서가 내장되어 검색속도가 빠른 편이다. [4]
  • 파일명이 URL 인코딩되어 저장되므로 파일 시스템이나 인코딩에 관계 없이 백업이 용이하다.
  • Angua 버전부터는 UTF-8 인코딩 지원으로 인해 한글문서 이름 그대로 저장이 가능해졌다.
  • 링크시 파일명 내의 첫 제목을 불러와 표기할 수 있다. 짧은 파일명이더라도 긴 제목으로 자동 변환되어 항목의 내용 파악이 용이하며, 파일명이 아닌 제목을 바로 검색하여 찾아갈 수 있다. (설정에서 바꾸어야 한다.)[5]

3 단점[편집]

  • 인덱싱에 DB를 안쓰고 자체 text 포맷을 쓰는 방식이라서 페이지 개수가 ~1만 페이지 이상이 되면 검색이 매우 느려진다.[6]
  • 사진도 마찬가지로, 그냥 파일로 관리되기 때문에, 하나의 폴더에 수백개의 사진이 들어가면 미디어관리자를 불러올 때 매우 시간이 걸린다. 이를 방지하기 위해서는 여러 폴더에 사진을 나누어 저장하는 것이 좋다. 문서의 네임스페이스와 상관없이 적절한 서브폴더에 저장하면 된다.
  • USB 용 포터블 버전의 경우 아무래도 휴대성 및 호환성이 티들리 위키에 비해 떨어진다. 티들리 위키는 Java, 혹은 HTML5가 되는 환경이라면 스마트폰이든 webOS든 리눅스든 전부 가능한 반면, 도쿠위키는 마이크로아파치가 설치가 되어야 한다. [7]
  • URL 보존 방식을 택할 경우, 데이터 파일들을 봐도 무슨 데이터인지 알 수 있는 방법이 없다. 그야 %EB%8F%84%EC%BF%A0%EC%9C%84%ED%82%A4[8] 같은 이름으로 저장되는 거니까 알아볼 수 있을 리가... 이는 서버의 설정을 UTF-8을 지원하면 해결된다. 일부 유료 서버에서는 이를 지원하며 무료로 바꿀 수 있다. 아래에 나온 변환 스크립트를 이용하여 바꿀 수 있다.
  • 첫줄 들여쓰기가 안된다.[9]
  • 도쿠위키의 글을 다른 사이트에 붙여넣기할때 한줄띄우기가 제대로 표현되지 않는다.
  • 캐쉬의 데이터가 용량을 많이 차지한다.
  • 랜덤페이지 플러그인 이나 기타 스크립트 같은것을 쓸때 php에 지식이 없으면 쓸수 없다.
  • 플러그인 제작을 개인이 하기 때문에 일부 플러그인에 한해서 사용법이 제대로 표시되어 있지 않거나 버전업시 플러그인이 호환이 안된다.
  • 위키 문법이 위키엔진의 주류인 미디어위키나 모니위키와 상이하다. 예를 들어 헤딩표시가 정반대이다.

4 개선중이거나 해결이 가능한 것들[편집]

  • 도쿠위키의 모토 "It's better when it's simple" 답게 다른 위키엔진에서의 기본기능이 플러그인으로 해결되어야 하는 경우가 많다. 예를 들면, 엔터[10], 템플릿(틀), 랜덤 페이지, 리다이렉트 등 기본적인(?) 기능을 위해 플러그 인을 사용해야 한다. 2번이상의 엔터는 역슬래시 \\를 넣어주어야 한다. 멀티 엔터를 만들어주세요! 능력자님
- 현재 리다이렉션은 미디어위키처럼 넘겨주기 문서를 작성하는 방식의 pageredirect 혹은 ACL에서 집중 통제하는 redirect로 해당 기능을 추가할 수 있다.
  • 검색 기능이 찾으려는 문서가 있어도 직접 보여주는 것이 아니라 말 그대로 검색만 지원한다. 무슨 말인고 하니, 오리위키위키피디아[11]의 경우엔 검색창에 '도쿠위키'를 입력하면 바로 도쿠위키 항목으로 넘어간다. 하지만 도쿠위키의 경우는 제목에 '도쿠위키'가 포함된 문서들을 실시간으로 표시해주고 검색된 항목들에서 클릭을 하면 해당 항목으로 넘어간다. [12]
- 현재 searchformgoto로 해당 기능을 추가할 수 있다. [13]
  • 문서를 UTF-8로 인코딩할 경우, 기존에 URL로 인코딩된 한글 문서는 읽어오지 못 한다. URL로 인코딩된 문서를 UTF-8로 바꿔주는 기능도 제공하고 있지 않기 때문에, 해당 문서들은 수작업으로 바꿔줘야 한다. 따라서, 초기 설치시 부터 UTF-8 사용이 권장된다.
- 기존 사용자들을 위한 변환 스크립트가 공개되었다. https://www.dokuwiki.org/tips:convert_to_utf8
  • 다른 파일 기반 위키들과 마찬가지로 서버의 언어설정이 EUC_KR로 되어 있는 경우 UTF-8 한글 파일명이 제대로 지원되지 않는다.[14]
- 의외로 간단한 해결법이 있는데, FileZilla의 사이트 관리자에서 UTF-8으로 강제 설정하면 된다. 이 경우 서버에는 괴문자로 저장이 되더라도 유저가 읽고 쓸 때는 괴문자를 정상적으로 UTF-8으로 변환해 인식하므로 쓰는 것에는 아무런 문제가 없다. 이렇게 하면 DB가 필요없는 도쿠위키의 특성상, 구형 서버에서도 돌릴 수 있다는 이점이 생긴다. 다만 마이크로 아파치, 자체 서버 등의 수법은 자기 컴퓨터에 저장하는 것이므로 당연히 불가능.

5 알려진 버그와 해결방식[편집]

  • 섹션 편집이 제대로 되질 않는다. - linebreak 플러그인 버그이다. 지우거나 xbr 플러그인으로 대체하면 해결 가능.

6 추천 플러그인[편집]

위키 문서 속에 또 다른 문서를 넣을 수 있다. 미디어위키 시스템을 생각하면 이해하기 쉬울 듯
자동 문서 목록을 만들어준다. 문서를 영화 관련 정보따위로 묶을 때 요긴한 플러그인
강제개행을 할 수 있게 해준다
tag 플러그인은 "카테고리" 혹은 "분류" 기능이다. 독립적으로 작동할 수 없기에 pagelist plugin이 필요하다.
discussion 플러그인은 "토론" 기능이다. 독립적으로 작동할 수 없기에 pagelist plugin이 필요하다. 해당 문법을 문서내에 작성하면 미디어위키모니위키처럼 따로 탭이 생성되는 것이 아닌 블로그처럼 하단에 댓글을 달 수 있는 공간이 생성된다.
DB 정리가 가능해진다. 태그 정리와는 비슷하면서도 다른 느낌이며, 결정적으로 사용법이 쪼큼 어렵다. 선행으로 sqlite plugin이 필요하다.
간단한 문법으로 글자 색을 변경할 수 있다. (도쿠위키는 HTML 태그가 먹히지 않기에 필요.)
간단한 문법으로 글자 크기를 변경할 수 있다. (도쿠위키는 HTML 태그가 먹히지 않기에 필요.)
소스 코드 강조
표 너비를 임의로 조정할 수 있다. 단위는 em, px, %가 가능하다.

7 참조 사이트[편집]

8 사용 사이트[편집]

그 밖에도 오픈위키의 도쿠위키 항목에서 한국 도쿠위키 사이트 목록을 볼 수 있다.


  1. 백괴낱말사전에서 이 드립을 치고 있다. 보기
  2. 압축을 풀고 run.cmd를 실행하면 자동으로 접속까지 된다.
  3. 최신 버전의 기본 템플릿의 디자인이 매우 개선되었으며, 화면 폭에 따라 데스크탑/패드/모바일을 자동 지원한다.
  4. 한글 검색이 부실하고 정확하지 않은 편이였으나 Lemming 버전 이후 개선되었다.
  5. 링크된 파일명을 today라고 하고 문서의 첫 제목을 -201x년 x월 x일- 이라고 설정하면 문서의 하이퍼링크에서도 today가 아닌 201x년 x월 x일으로 표기된다. 첫 제목의 지속적인 수정과 갱신이 이루어지는 문서의 경우라면 역링크의 문서의 수정이 필요없어 매우 편리한 기능이다.
  6. 속도 개선을 위해 설정에서 인덱스의 캐싱을 설정해볼 수 있지만, 원천해결은 안된다. 몇 천 단위로 가면 조금씩 느려짐을 느낄 수 있다.
  7. 큰 단점이라고 할 수는 없다. 단 데이터 관리는 도쿠위키가 훨씬 직관적이고 쉽다. 그냥 파일들을 지우거나 이동시킨 후 다시 캐싱하면 된다.
  8. 도쿠위키의 URL 변환
  9. 이는 대부분의 위키워드프레스에서 겪는 문제. 이상하게 해외에서 개발된 웹 소스들은 문장 앞 띄어쓰기를 강제로 붙여버린다. 들여쓰기가 그렇게 싫은가?
  10. 최신버전에는 xbr플러그인이 기본지원되며, 오래된 버전은 제작자가 linebreak보다는 xbr을 권장하고 있다.
  11. 미디어위키 기반
  12. https://www.dokuwiki.org/start?id=ko:search 참조
  13. 도쿠위키는 기본적으로 네임스페이스를 지원하므로, 특정 네임스페이스의 문서로 바로 이동하려면 네임스페이스도 입력하면 된다. 예) wiki:test
  14. 간단히 말해서 shell에서 locale 이라고 명령했을때 각종 언어설정이 UTF-8 이라고 확인되어야 한다. 다른 편법을 사용해도 서버의 세팅이 UTF-8이 아니면 실제 서버에는 한글 파일명이 생성되지 않아 URL코딩도 아닌 괴문자조합으로 저장된다. 이는 shell에서 루트 권한으로 작업하기 전에는 바꿀수 없다.
  15. 포터블로 받으려면 Include Web server 항목을 체크해서 다운로드 하면 된다
  16. github에 있다
  17. 서비스가 중단 되었거나, 아직 개시가 안 된 경우 섹션 명에 취소선이 그어져 있다.
랜덤