미디어위키/미디어위키 설치 및 관리

미디어위키(Mediawiki)에 대하여

씨실과 날실 2018. 12. 3. 10:00

안녕하세요. 씨실과 날실입니다.

지난 글에서 언급한 적이 있습니다만 미디어위키는 제가 가상머신 설치에서부터 서버 구축, CMS 운용에 이르기까지의 연재를 결심하게 만든 계기였습니다.

드디어 그러한 미디어위키가 앞으로의 주 연재 주제입니다. 연재 계기가 되었던 만큼 가장 많은 내용의 분량을 연재할 예정입니다. 미디어위키 연재가 미디어위키를 설치하고 운영하고자 하는 많은 이들에게 조금이나마 도움이 되기를 바랍니다.

제가 미디어위키에 관심을 갖고 관련 자료를 찾을 때 한국어로 된 자료는 얼마 없었습니다. 일단 CMS 도구들 중 위키 프로그램은 그것이 지니는 고유의 특성상 사용자 층이 두텁지 않아 관련 자료가 드물 수 밖에 없습니다. 있다 하더라도 아주 기초적인 설치단계까지만의 소개하거나, 공개된 자료가 오래된 버전을 기반으로 하고 있어 최신 버전의 미디어위키에 적용하기에는 무리인 경우가 많았습니다. 그 외에 제가 사용하는 시스템 조건(OS 등)이 맞지 않아 그대로 적용할 수 없는 경우도 많았습니다.

그래서 저는 부족한 배경지식과 외국어 실력에도 불구하고 영어권 웹에서 문제해결 방법을 찾아야만 했습니다. 그러다 보니 툭하면 나타나는 오류 메시지들을 확인하고 해결하는데 많은 시간과 품을 들여야 했습니다.

이제 어느 정도 미디어위키를 사용할 수 있다는 생각이 들어 지금까지 제가 얻은 지식들을 정리하고, 쥐꼬리만한 지식이나마 필요할 누군가에게 공유하여 도움이 되기를 바라는 마음에서 이 연재를 시작합니다.




위키

먼저 위키가 무엇인가 개념을 잡고 들어가얄 할 필요가 있습니다. 위키백과에서는 위키를 다음과 같이 정의하고 있습니다.


위키(wiki, /wɪkiː/ 듣기 )는 불특정 다수가 협업을 통해 직접 내용과 구조를 수정할 수 있는 웹사이트를 말한다.[1]


즉 위키는 본래 불특정 다수가 문서를 생성, 편집할 수 있도록 특수하게 고안된 협업 사이트 또는 그러한 사이트를 만들 수 있는 프로그램을 일컫는 것입니다.

한국어권 웹에서는 한국어 위키백과와 나무위키 이 두 사이트가 가장 대표적이며 그 외에도 수많은 위키 사이트가 존재합니다.

한국어 위키백과 : https://ko.wikipedia.org

나무위키 : https://namu.wiki


위키는 다른 CMS 도구와 다르게 어떤 특성을 지니고 있는지 알아보겠습니다.

위키의 가장 큰 특성은 바로 기록 보관에 특화되어 있다는 점입니다. 무슨 말인고 하니 A라는 사람이 어떤 문서를 생성하고 이어 B라는 사람이 그 문서를 수정했다고 칩시다. 그럼 생성 문서와 수정 문서 모두 보관이되며 각 계정 사용자의 행위는 기록되고 공개됩니다.

대표적 CMS 도구인 블로그와 비교해보면 위 특성을 쉽게 이해할 수 있습니다. 일단 블로그는 대부분의 경우 1명이 블로그 안의 모든 것을 통제합니다. 그러나 위키는 기본적으로 협업을 강조하기 때문에 권한을 획득한 모든 이들이 주인이 되어 문서를 생성, 편집할 수 있습니다.

그리고 블로그는 문서를 생성한 후 편집하거나 삭제를 하면 기존 정보는 사라지게 됩니다. 그러나 위키는 기록 보관 기능이 특히 강조된 프로그램으로, 문서를 생성, 편집, 이동 등의 활동을 하면 그것은 그 활동 하나하나가 각각의 문서가 됩니다. 기존의 문서를 수정하거나 심지어 삭제를 한다고 해서 기존의 정보가 바뀌거나 사라지지 않고 그대로 보관이 됩니다. C라는 문서를 D라는 문서로 수정하면 기존의 C 문서와 수정된 D 문서가 모두 존재하게 되어 문서의 역사를 확인할 수 있습니다. 이러한 위키의 문서의 역사 보관 특성상 사용자 계정의 탈퇴도 지원하지 않습니다.

즉 위키는 한번 생성된 정보는 서버 관리자 혹은 위키 최고 관리자 또는 이들에게 권한을 위임받은 사용자가 아닌 이상 수정하거나 삭제할 수 없습니다. 정보를 지속적으로 누적하여 축적하도록 설계된 프로그램인 것이지요.

이러한 특성상 각 문서에 대한 책임 소재를 명확히 할 수 있고 과거의 기존 정보를 무시하지 않을 수 있습니다.

대신 위키는 불특정 다수에게 편집 권한을 주기 때문에 반달 등의 악의적인 편집에 취약할 수 밖에 없습니다. 물론 그 정보조차도 저장되므로 사후 편집 권한을 회수하거나 특정 문서의 편집 권한을 승인된 사용자만 할 수 있도록 설정하는 등의 조치를 할 수 있지만 위키 자체가 공개적  특성을 지니기 떄문에 민주주의 의식을 지닌 다수의 집단지성의 힘이 필요합니다.

그렇다고 해서 협업 전용이냐, 그건 또 아닙니다. 개발의 처음이 협업에 기반을 두고 이루어졌고 지금도 그것이 주 개발 역점이지만 지극히 개인적인 용도로 사용할 수도 있습니다. 이런 경우 위키 사용자의 통시적 정보 축적이 필요할 경우 사용하게 됩니다. 예를 들어 시나 소설을 쓴다고 가정합시다. 그럼 창작 관련 정보와 퇴고 과정을 일목요연하게 알아볼 수 있습니다.

블로그가 보통 자유로운 내용을 단편적으로 일기장 식으로 쌓아가는 것이라면 위키는 보다  내용을 통시적으로, 유기적으로 결합하여 전문지식 등 목적성이 깊은 내용들을 축적하는 것입니다.


미디어위키

미디어위키는 전세계의 위키 프로젝트들 중 가장 대규모의 프로젝트이자 위키라는 범주를 넘어서 수많은 CMS들 중에서도 굉장히 오랫동안 이어져 온 프로젝트입니다. 2002년부터 현재까지 무려 17년째 이어져 오고 있는 오픈소스 프로젝트입니다.

이 미디어위키는 위키백과 프로젝트의 기반이 되는 프로그램으로, 굉장히 많은 익스텐션(확장기능)이 존재하여 위키의 기능을 손쉽게 확장할 수 있습니다.

대부분의 위키가 그렇듯이 독자적인 문법이 존재하여 문서를 작성할 땐 이 문법을 준수해야 합니다. 그런데 이 문법이 결코 쉬운 편은 아니라서 미디어위키 사용에 있어서 굉장한 진입장벽이 됩니다.

그러나 이것을 개선하기 위해 Visual Editor(비주얼 에디터 = 시각편집기) 프로젝트가 가동 중입니다. 이 시각편집기는 보다 편한 위지윅 에디터를 만드는 것에 그 목적을 두고 있습니다.

그러나 이 시각편집기를 설치하기 위해서는 Node.js와 Parsoid를 따로 설치하고 설정해주어야 하는데 그것이 리눅스 및 미디어위키 초보자들에게는 쉬운 일은 아닙니다.

물론 이번 연재에 이 시각편집기 익스텐션 설치도 포함되어 있습니다. 그러니 미디어위키를 설치해 사용해보고자 하는 초보자 여러분들은 연재를 잘 따라오시기 바랍니다.

미디어위키 공식 사이트는 https://www.mediawiki.org입니다. 다음 글은 미디어위키 설치 및 운영을 위해 필요한 관련 안내 링크 모음입니다. 이 것은 꾸준히 업데이트할 생각입니다.

미디어위키는 PHP를 기반으로 작동하며 DB가 필요한데 MySQL, MariaDB를 완전히 지원합니다. 그외 POstgreSQL, SLite는 제한적으로 지원합니다.

보다 자세한 설명은 다음의 사이트를 참고하시기 바랍니다.

미디어위키 공식 사이트 : https://www.mediawiki.org/

한국어 위키백과 - 미디어위키 : https://ko.wikipedia.org/wiki/미디어위키

영문판 위키피디아 - Mediawiki : https://en.wikipedia.org/wiki/MediaWiki

나무위키 - 미디어위키 : https://namu.wiki/w/미디어위키