사용자 도구

사이트 도구


소프트:도쿠위키

도쿠위키 (Dokuwiki)

도쿠위키 로고
소프트명:
Dokuwiki
한국어명:
도쿠위키
기능분류:
위키엔진
개발사:
Splitbrain
발매원:
Splitbrain
가격:
자유
저작권:
GPL2
최신판:
2013-05-10a Weatherwax
첫발매일:
2005-01-13
최종판올림:
2013-10-30
운영상태:
운영중
기반언어:
PHP
지원플랫폼:
PHP가 지원되는 서버
홈페이지:
http://www.dokuwiki.org

도쿠위키는 PHP로 만들어진 위키 엔진의 일종으로, GPL2 기반으로 배포되는 오픈소스 프로그램이다. 간단한 구조와 강력한 플러그인 지원으로 많은 사용자를 확보하고 있다. 중, 소규모의 위키에 적합하며 마이크로 아파치서버를 이용한 오프라인 위키를 이용할 수 있도록 한 ‘도쿠위키 스틱’ 버전을 지원하여 개인 사용자에게도 적합한 면모를 가지고 있다.

넥스위키에서 사용하고 있는 위키로, 즉 여러분이 보고 있는 이 페이지가 도쿠위키로 이뤄져있으며, 위키를 비교해주는 위키매트릭스의 위키항목도 도쿠위키로 이루어져있다.

단순히 사용하는 사용자 숫자로만 따졌을 때는 현재 전세계에서 가장 많은 사용자를 가지고 있다고 한다. (규모나 건실함을 따지면 위키피디아 하나만으로 이미 게임이 안되긴 하지만)

상세설명

도쿠위키의 ‘Doku’는 독일어의 ‘문서’에 해당하는 ‘Dokument’의 앞쪽을 딴 단어로, 말하자면 ‘문서위키’정도의 의미가 된다. 이름 그대로 입력한 텍스트 자체가 문서가 되는 구조를 지향한 것이 특징이다. 때문에 다른 위키와 문법적으로 상이한 요소가 꽤 있으며, 복잡한 태그는 모두 플러그인으로 분리 운영하고 있다. 심플한 구조와 안정도로 인해서 위키엔진으로서 뿐만 아니라 많은 이들이 CMS용도로도 사용하고 있다.

초창기에는 기본 렌더러는 XHTML 1.0 Transitional 기반으로 화면을 렌더링해 출력하였으며, 2012년 초 발표된 Angua 버전부터는 HTML5 기반으로 DTD가 변경되었다. 출력 DTD는 플러그인을 통해서 다른 렌더러를 선택해 사용할 수도 있다.

예전버전에서는 한글을 비롯한 멀티바이트 문자셋을 전부 인코딩해서 저장하여 윈도우에서 사용하는 NTFS 등에서 오류를 내는 경우가 많았다. 그러나 ‘Rincewind’ 버전 이후로 UTF-8 인코딩으로 파일을 저장할 수 있게 되면서 서버에서 UTF-8을 지원만 하면 더이상 그런 문제로 인한 고민은 하지 않아도 되게 되었다.(윈도우서버에서는 UTF-8로 파일 저장이 되지 않는 것으로 알려지고 있으므로 주의)

또한 다양한 기능 지원을 위해 자바스크립트 기반의 프레임웍을 각각의 플러그인에서 로드해야했던 문제도 2012년 초 발표된 ‘Angua’ 버전에서 JQuery 프레임웍을 포함함으로서 차후 플러그인은 JQuery를 이용하는 한도내에서 별도 프레임웍을 로드할 필요가 없게 되었다.

미디어위키 등의 다수 위키와 달리 데이터베이스를 사용하지 않고 텍스트 파일 저장방식(Plain Text)을 채용해 설치, 백업, 복구 등이 간단하고 PHP외의 부가적인 기능을 거의 필요로 하지 않아 환경 독립적으로 활용하기에 좋다. 거기다 미리 렌더링한 데이터를 캐쉬해두고 전송하는 방식으로 인해서 X-Sendfile과 상성이 좋으며, Nginx 등의 고정파일 전송에 특화된 서버에서의 효율도 매우 높은 편이다.

또한 ACL 기능을 통해 각종 서비스와 연결해서 사용하는 것이 가능하기 때문에 유연한 사용이 가능하다. 국내의 관련 기능으로는 제로보드4, XE 등과 연동을 제공하고 있다.

국내에서는 엔씨소프트(NCsoft)에서 제공하던 엔씨 스프링노트가 서비스 중단되면서 개인노트를 운영하고자 하던 사람들이 데이터 백업본을 변환시켜서 도쿠위키로 대거 이동하는 일이 있었다. 개인규모 사용자들이 많았기 때문에 겉으로는 크게 보이진 않았으나 국내 도쿠위키 사용자가 이 때 상당히 많이 늘어났던 것은 사실이다.

저장방식상의 특성

도쿠위키의 문서 저장방식은 파일구조로 이루어져있다. 이는 어떤의미로는 시대를 역행하는 방식이라고도 할 수 있는데, CGI로 이루어진 게시판 초창기의 문서들이 이런식으로 개별 문서를 파일로 저장하는 형태로 이루어져있다가 관리 및 검색 효율을 위해 데이터베이스 중심으로 이동했었기 때문이다. 이는 위키위키 역사에서도 마찬가지여서, 초창기 위키들이 텍스트파일 방식을 지원하다가 점차 데이터베이스로 이전한 과거를 가지고 있다.

그러나 도쿠위키는 과거의 게시판 및 포럼 구조와 달리 메타데이터를 정리하여 검색을 위한 별도 인덱스 파일을 작성하도록 만들어져 검색 문제를 회피하였으며, 위키문법으로 작성된 위키문서와 별도로 HTML 파일로 파싱된 캐쉬파일을 별도 작성해 둠으로서 렌더링 효율을 높였다. 파일의 저장위치가 문서의 계층구조와 동일하게 저장되기 때문에 생기는 관리적 잇점 또한 무시할 수 없다.(도쿠위키는 VI 등의 외부 편집기로도 문서를 수정해줄 수 있다!)

그럼에도 대규모의 문서가 저장될 경우에는 검색 등에서 데이터베이스를 사용하는 위키에 비해 부하가 심하게 걸리는 것이 사실이다. 때문에 도쿠위키의 활용범위는 주로 중소규모에 최적화되어있다고도 생각할 수 있다.

장점

  • 속도가 빠르고 안정적인 구조로 인해 믿을 수 있는 운영이 가능
  • 다중언어를 착실히 지원하며, 한국어 또한 제대로 지원하고 있어 한국 사용자에게 적절하다.
  • DB를 쓰지 않기 때문에 미디어 위키등의 데이터베이스를 사용하는 위키에 비해 상대적으로 설치, 운영이 간단하다.
  • 간단하고 체계적인 위키문법을 지원해 미디어위키 등의 절차적 복잡성을 가진 위키에 비해 초보자에게 쉽게 어필 가능하다.
  • 저장이 텍스트파일로 이뤄지기 때문에 데이터베이스와 달리 백업/복원이 간단하다.
  • 파일명을 인코딩한 데이터로 주소 전달하기 때문에 브라우저의 URL 인식기능과 별개로 정확한 페이지 이동이 가능.
  • 네임스페이스 기능의 지원으로 계층으로 분류된 문서 관리가 용이하다.
  • 각종 플러그인으로 추가적인 기능 구현이 자유롭고 강력하다.
  • 템플릿 기능을 지원해 각종 템플릿을 추가하고 적용하는 것이 가능하다. 사용자별, 네임스페이스 별로 템플릿을 달리 적용할 수도 있다.
  • 관리자 기능이 쉽고 간결하게되어있어 각종 설정과 스팸관리 등이 용이하게 되어있다.
  • 스팸 폭탄을 맞아도 특정 키워드를 기반으로 문서를 스팸 이전으로 되돌릴 수 있는 스팸복구 기능이 있다.

단점

  • 언어 관련 문제
    • 서양의 로만지 문자를 쓰는 사람들에 맞춰져있어, 한글 등의 멀티바이트 문자를 쓸경우 인코딩문제를 초기 셋팅에서 직접 설정해줘야 한다.
    • 플러그인의 경우에는 각각 개별 프로젝트인지라 한글 지원이 안되는 경우가 많다. 초기에 만들어진 플러그인의 경우 멀티바이트 문자열 처리에 문제가 있는 경우도 있다.
    • 저장형식에서 다른 형식으로 저장된 텍스트를 변경된 인코딩으로 전환시키는 기능이 빈약하다. (변환도구 제공중. 단, 단순히 페이지 이름만 변경해주는 것이어서 서치인덱스로 인덱스를 재생성해야하는 등 손이 많이간다)
  • 기본 기능이 워낙 심플해서 기본적으로 원활한 사용을 하려면 이에 필요한 준필수급 플러그인을 설치해야만 한다.(이를 해결하기 위해 최근에는 다운로드 시 일부 플러그인과 패키징해 다운할 수 있도록 하는 통합 다운로드 페이지를 만들어 제공하고 있다)
  • 검색 구조 및 표시 페이지의 구조가 단순한 관계로 검색 효율이 별로 좋지 않다. 특히 검색에서 ‘페이지’ 기능이 없어 단순한 문자열 검색시 페이지가 엄청나게 길어지는 결과페이지를 보여준다.(즉 검색 결과가 만개면 만개를 한 페이지에 다 표시한다)

역사

도쿠위키는 2004년 7월 독일의 안드레아 고(Andreas Gohr)에 의해서 프레쉬미트(Freshmeat)에서 첫 공식 버전이 공개되었다.

2005년 1월에는 파서(Parser)와 렌더러를 재디자인 하면서 크게 변경되었다. 이후 성능과 대규모 문서에대한 대응력이 좋아지면서 널리 알려지기 시작했다. 동년도 7월에는 플러그인 인터페이스를 통한 기능 확장 기능이 포함되었고, AJAX (Asynchronous Javascript And XML)를 통한 복합 기능을 포함시키면서 사용성과 기능면을 강화시켰다. 이러한 면이 높은 평가를 받으면서 오픈소스 커뮤니티에서 점차 사용자층을 넓혀가는 효과를 낳았다.

2006년에는 구글 사이트맵 기능과 한글을 비롯한 멀티바이트 문자의 페이지명을 인코딩해서 저장할 수 있게 변경되면서 인터넷상에서 로컬문자로 인한 로드에러 문제를 해결하게 하면서 저변을 넓혔다.

2007년에는 내부코드를 재작성하여 효율성을 높이고 각종 버그 제거에 집중했다.

2008년에는 2007년부터 추진해온 각종 AJAX를 이용한 데이터 로드 효율성과 인터페이스 개선, 검색엔진 및 메타블로그 등의 사이트에서 접근 효율화를 위한 XML 신디케이션기능과 XMLRPC 기능이 포함되었으며, X-Sendfile 헤더 기능 지원을 통해 성능 향상을 꾀했다.

2009년 초에는 플래쉬 멀티 업로더 기능 추가와 플래쉬 플레이어10의 보안 업데이트에 따른 각종 기능 충돌 문제를 해결하기 위한 업데이트, 각종 성능 개선과 ACL 기능 개선 등을 이뤘다. 2009년 말에는 첫 코드네임이 붙은 공식 버전인 2009-12-25 버전 ‘Lemming(레밍)‘을 선보이면서 대대적인 기능 개선을 이룬다. 익스플로러8과 크롬 등의 신규 브라우저에대한 호환성 문제 해결, 검색 성능 향상, 메타 데이터 정리 및 에디터 인터페이스 개선 등이 이뤄졌다.

참고로 넥스위키가 처음 만들어진 것도 레밍 버전이 나오고 얼마 후인 2010년 2월이었다.

2010년에는 2010-11-07 ‘Anteater(앤티터)' 버전을 내놓았고, 각종 성능 향상과 레밍 버전에서 발생한 버그 패치에 중심을 둠으로서 안정화에 중심을 두었다.

2011년에 공개된 2011-05-25 버전인 ‘Rincewind(린스윈드)‘는 로만지 코드가 아닌 파일명 저장 방식에 UTF-8 코드를 지원하면서 특히 아시아권의 파일 저장에 큰 향상을 가져왔다. (이전 버전은 윈도우의 경우 인코딩된 파일명이 255자를 넘어설 경우 에러가 발생했다) 메타데이터 인덱스방식이 추가되어 검색 및 인덱싱 기능의 성능을 크게 향상시켰다.

2012년 1월 공개된 2012-01-25 ‘Angua(앙구아)‘에서는 지금까지 제약이 심했던 부분의 대대적인 개선을 위해 JQuery를 내장시켰으며, 이로인해 제약이 많았던 플러그인의 기능이 크게 개선되게 되엇다. 전체 페이지의 미디어관리자 시스템의 추가, 플래쉬 기반의 멀티업로더를 삭제하고 JQuery 기반의 AJAX 멀티 업로더 도입 등이 이뤄졌다.(오페라 외의 메이저 브라우저는 모두 지원)

2012년 11월 공개된 2012-10-13 ‘Adora Belle(아도라 벨)‘에서는 HTML5 지원을 위한 신규 도쿠위키 표준 스킨과 회원 인증 및 그룹기능, 성능 개선 및 버그 제거 등의 추가적 사항이 처리되었다. 또한 위키 팜 기능을 코어에 내장시킴으로서 이전에 복잡한 패치과정을 거쳐야했던 다중 위키 사용기능을 간단히 사용할 수 있도록 처리했다.

2013년 3월 공개된 ‘Weatherwax(웨더왁스)‘에서는 인증 백엔드 기능을 강화, 개량했다. 또한 Angua부터 추가된 JQuery의 최신버전을 탑재, JQuery 버전상 삭제된 호환성(compatibility) 기능을 위한 레이어가 삭제되어 플러그인의 작동에 일부 제약이 있을 수 있음을 공지하고 있다.(주요 플러그인은 대부분 대응됨) 또한 아도라벨에서 추가된 기본 스킨의 버그와 성능 개선을 대폭 이루었고, 각종 라이브러리를 최신버전으로 갱신하여 최적화를 이루었다.

2013년 10월 30일에 공개된 ‘Binky(빙키)‘에서는 사용자가 탈퇴기능으로 자기 계정을 삭제할 수 있게 되었고, CSV파일을 이용한 사용자 관리 기능이 추가되었다. 사용자와 관련된 기능으로는 임시암호기능 방식 개선으로 사용하기 좋게 변경했고, 효율 상승을 위해 내부의 CSS 처리방식을 개선시켜 연산력 소모를 줄였다. 그외에 많은 언어팩의 갱신이 이뤄졌으며, 구형 템플릿(스킨)이 삭제된 것도 나름의미가 있는 변화라 할만하겠다.

2014년 5월 5일 공개된 ‘Ponder Stibbons(폰더 스티본)‘에서는 확장 기능 관리자 교체, HTML5의 오디오와 비디오 태그를 내장시키고 각종 파일 아이콘(mime 기준)을 추가 함으로서 전체적 미디어 기능을 강화시켰다. 사용자 페이지 관련 기능이 내장되고 리비전 관리 기능 개선 등이 이뤄졌다.

2014년 9월 29일 공개된 ‘Hrun(흐룬)‘에서는 로컬라이제이션 기능이 강화되었으며, 겉으로는 드러나지 않는 타임스탬프 기능이 개선되었다. 또한 CLI 커맨드 시스템이 개선되었고 사용자 인증 기능이 개선되었다.

도쿠위키 USB버전

도쿠스틱 아이콘

도쿠위키 USB버전(Dokuwiki on a stick)은 통칭 ‘도쿠스틱’으로 불리운다. 윈도우용 마이크로 아파치 서버 및 NGINX 서버를 도쿠위키를 함께 담은 패키지로, 5MB가 약간 넘는 크기로 제공되고 있으며, 압축을 풀 경우 10메가 가량이 된다.

예전에는 매번 패키징되는 버전을 다운받아야했는데, 통합 다운로드 페이지가 생기면서 다운로드 시 윈도우용 마이크로 아파치를 포함한 패키지로 만들어 받을 수 있게 되었으며, 압축을 풀면 안에 배치파일까지 포함되어있어 사용이 간단해졌다.

이 프로그램은 윈도우 전용으로, 압축을 풀고 해당 디렉토리에 포함된 아파치 및 NGINX서버를 기동시킨 다음 웹브라우저로 http://localhost:8800/, 혹은 http://127.0.0.1:8800(작동이 안될 시 포트 번호를 8080 으로) 접속하면 도쿠위키에 접속해서 글을 쓸 수 있게 된다. (참고로 관리자 계정은 admin/admin으로 설정되어있다) 비스타 이상에서는 관리자 권한으로 실행해줘야 하므로 주의.

서버가 따로 필요없고, 들고다니면서 어디서나 쓸 수 있기 때문에 개인용 문서를 작성할 때 매우 유용하게 사용할 수 있다.

여러 장소에서 사용할 경우나 USB디스크를 들고다니기 귀찮을 경우에는 드롭박스를 통해 동기화해 사용하는 것도 가능하나, 이 경우에는 캐쉬데이터도 동기화 되기 때문에 약간의 설정 변경을 해주면 효율을 높일 수 있다. 아래 설정을 참고하면 좀 더 나은 사용을 보장해준다.

함께보기

안쪽고리

바깥고리

 

덧글

소프트/도쿠위키.txt · 마지막으로 수정됨: 2015/01/30 10:42 저자 에리얼