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

미디어위키(Mediawiki) 1.31.1 소도구 01 - 인터위키 설정

씨실과 날실 2019. 1. 7. 10:00

미디어위키는 각 사용자별로 필요한 소도구를 설정해 사용할 수 있습니다. 필요 없다면 환경설정 내 소도구에서 해당 항목을 해제하면 되고 반대로 필요한 소도구라면 해당 항목을 체크하여 사용할 수 있습니다. 이렇게 각 사용자별로 소도구를 이용하게 하려면 위키의 관리자가 소도구 소스 파일을 작성해주어야 합니다. 그러나 위키를 처음 설치, 관리하는 사람인 경우 그것이 결코 쉬운 일은 아닙니다.

그런데 다행스럽게도 이미 만들어져 유지보수되고 있는 미디어위키용 소도구들이 공개되어 있어 우리는 그것들을 복사해 붙이기만 하면 이용할 수 있습니다. 선구자들의 노고에 감사하며 이용하도록 합시다.

우리는 한국인이므로 한국어 위키백과(https://ko.wikipedia.org)의 소도구들을 이용하도록 합시다. 우키백과에서 수많은 소도구들이 등록되어 있습니다. 그러나 이 소도구들은 위키백과의 기반이 되는 미디어위키 프로그램이 버전 업되면서 작동이 잘 안되거나 지금은 크게 효용이 없는 소도구들도 존재합니다.

그래서 제가 엄선한 소도구들을 사용할 수 있는 방법을 올려드리도록 하겠습니다.

위키백과에서 사용되는 소도구들

위키백과에 접속하면 위와 같은 화면이 나옵니다. 검색창에 특수:소도구 또는 special:gadgets을 입력해줍니다.

주소는 아래와 같습니다.


그러면 위 그림처럼 위키백과에 등록되어 있는 소도구들이 나옵니다. 물론 이 모든 소도구들이 잘 작동하거나 효용이 있는 것은 아닙니다. 사용자들이 자발적으로 유지보수하는 것이므로 소스코드 입력 오류로 작동이 안 되는 경우도 생길 수 있고, 미디어위키의 업데이트로 코드가 안 맞아 작동이 안될 수도 있으며, 시간이 지나 그다지 효용이 없어진 소도구도 있습니다.

따라서 우리는 우리에게 필요한 소도구들을 선택해 활용할 필요가 있습니다. 그리고 사용자들이 위키백과의 소도구들을 새로이 만들거나 소스코드를 업데이트하는 등 유지보수 작업이 꾸준히 이루어지고 있으므로 가끔씩 위키백과의 특수:소도구에 링크된 각 소스코드의 수정 내용을 확인해주시면 소도구들을 유지보수하는데 유리합니다. 수정 확인은 각 소스코드 문서의 역사보기를 이용하시면 됩니다.

사용자 환경 설정에서 설정할 수 있는 소도구 목록입니다. 해당 목록은 소도구 정의에서 편집할 수 있습니다. 이 문서에서는 각 소도구의 각 설명 문서와 코드의 시스템 메시지 링크를 제공합니다.

위키백과의 특수:소도구 문서 상단에 위와 같은 문구가 적혀 있습니다. 위키의 소도구를 관리하기 위해서는 특수:소도구 뿐만 아니라 미디어위키:Gadgets-definition도 필요합니다. 특수:소도구 문서 상단의 소도구 정의 링크를 타고 들어가거나 위키 검색창에 미디어위키:Gadgets-definition을 직접 입력해 들어가시면 됩니다.

그러면 위 그림처럼 내용이 나오게 됩니다. 소도구정의가 먼저 작성되어야 이것을 기반으로 특수:소도구 문서가 자동 작성됩니다. 물론 이후에 특수:소도구 문서를 수정해주어야 합니다.

위 그림에서 원본보기를 눌러줍니다. 그러면 아래와 같은 화면이 나옵니다.

이 화면에 나오는 소스들이 위키 소도구들의 설정과 소스 파일명을 포함하고 있습니다. 미디어위키의 소도구는 이런식으로 구성된다는 것을 눈으로만 훑어 보시고 소도구 소스 작성에 앞서 다른 작업을 먼저 합시다.


인터위키 설정

먼저 인터위키란 무엇인지 개념부터 잡고 들어갑시다. 인터위키는 동일한 프로그램 체계를 가진 서로 다른 위키 간 정보 교류 방법입니다. 즉 미디어위키를 예로 들면 미디어위키로 만들어진 위키 간은 복잡한 문법없이 간단한 위키문법만으로 서로 오갈 수 있습니다. 지금 우리가 만든 위키에서 위키백과의 내용으로 바로 점프하듯 옮겨갈 수 있습니다.

그럼 인터위키 설정을 합시다. 인터위키를 이용하기 위해서는 interwiki 익스텐션과 그에 맞는 설정 코드 추가가 필요합니다. interwiki 익스텐션은 미디어위키 1.21부터 기본적인 번들 익스텐션으로 포함되어 있으므로 따로 설치할 필요 없습니다. 만약 미디어위키 설치시 익스텐션을 미설치했거나 해당 익스텐션을 삭제하는 등의 이유로 따로 받아야 하는 경우 아래 주소에서 다운받으시면 됩니다.

익스텐션만 있다고 바로 인터위키 기능을 사용할 수 있는 것은 아닙니다. 인터위키 설정 코드를 LocalSettings.php 파일에 추가해주어야 합니다.

우분투에서 노틸러스를 실행해 좌측 하단 다른 위치를 눌러 미디어위키의 설정 파일이 위치한 폴더로 이동해 위 그림처럼 마우스를 LocalSettings.php 파일 아이콘 위에 두고 마우스 오른쪽 버튼을 누르면 위 그림처럼 메뉴가 뜨는데 Edit as Administrator를 누르고 우분투 암호를 2번 눌러 gedit 편집 화면으로 들어갑니다.

만약 해당 메뉴가 뜨지 않는다면 우분투에 nautilus-admin 패키지를 설치하지 않은 경우이므로 아래 링크 글을 참고하여 해당 패키지를 설치해주시기 바랍니다.


# Add more configuration options below. 문구 아래부터 추가 설정들을 추가해 나가면 됩니다.

이제 인터위키 설정을 추가해줍니다. 아래와 같은 내용을 추가해주시면 됩니다.

### 관리자 인터위키 편집 ###
# wfLoadExtension( 'Interwiki' );
// https://www.mediawiki.org/wiki/Extension:Interwiki
// interwiki 데이터를 편집 할 수있는 sysops 권한을 부여하려면
$wgGroupPermissions['sysop']['interwiki'] = true;

// interwiki 데이터를 편집 할 수있는 새로운 사용자 그룹을 만들려면
// (관료는 이 그룹에 사용자를 추가 할 수 있음)
# $wgGroupPermissions['developer']['interwiki'] = true; // 적절한 경우 주석 표시기를 삭제합니다. 

위 코드를 설명하겠습니다.

#과 // 표시

주석 처리입니다.

###  ###

해당 코드 역할 설명

# wfLoadExtension( 'Interwiki' );

익스텐션 추가 코드로 위에 이미 적혀 있으므로 아래에는 # 표시로 주석처리

// 인터넷 주소

해당 익스텐션이나 스킨 혹은 기타 프로그램 관련 주소

// 설명

코드 사용과 이해에 필요한 설명

$wg~

미디어위키에서 사용되는 환경설정 코드


$wgGroupPermissions['sysop']['interwiki'] = true;

[01] $wgGroupPermissions / [02] ['sysop'] / [03] ['interwiki'] = [04] true / [05] ;

[01] - 미디어위키 환경설정 코드

[02] - 권한 그룹

[03] - 기능

[04] - 권한 부여 여부

[05] 구문 종료 표시 (마침표 역할) - 이 표시가 없으면 오류가 발생하여 위키에 접속조차 불가능

다른 주석은 모두 필요 없고 필수 코드만 추가하겠다면 LocalSetttings.php 파일에

wfLoadExtension( 'Interwiki' );
$wgGroupPermissions['sysop']['interwiki'] = true; 
이 두줄만 있으면 됩니다. 그렇지만 가능하면 제가 적은 내용을 모두 적어주시기 ㅍ바랍니다. 그래야 추후 위키 유지보수가 편해집니다.

위 내용을 저장하고 터미널에서 아래 명령을 실행하여 아파치 서버를 재실행해줍니다.

study@study-VirtualBox:~$ sudo service apache2 restart 

인터위키 데이터 보기 및 편집

설치한 위키에 인터위키로 위키백과를 연결하는 것을 예시로 들겠습니다.

이제 위키에 로그인합니다. 위키 최우상단에 로그인 링크가 있습니다. 해당 링크를 누르면 아래와 같은 모습이 나옵니다.

사용자 이름과 비밀번호를 입력하고 로그인합니다.

로그인하면 위와 같은 화면이 나옵니다. 거기에서 화면 좌측 특수문서 목록 링크를 눌러 특수:특수문서에 들어갑니다. 아니면 위키 검색창에 특수:특수문서를 눌러 들어가도 됩니다.

그럼 위키에서 사용되는 특수문서 목록들이 나옵니다. 위 그림의 특수문서 목록 중에는 위키 관리자만 사용할 수 이쑈는 특수 문서들도 존재합니다.

많은 특수문서 목록들 중 위 그림 항목에서 인터위키 데이터 보기 및 편집 링크를 눌러줍니다. 참고로 위키 관리자로 접속하지 않고 특수:특수문서에 들어간다면 편집 항목이 빠진 인터위키 데이터 보기만 나올 것입니다.

들어가면 위와 같은 화면이 나타납니다. 이것들이 미리 저장되어 있는 인터위키 항목들입니다.

문서 상단의 인터위키나 언어 접두어 추가 버튼을 눌러줍니다. 그러면 아래와 같은 화면으로 전환됩니다.

접두어는 필수 항목입니다.

전달과 끼워넣기 항목은 비운 상태로 둡니다.

URL은 연결하고자 하는 위키의 주소를 적어줍니다. 단, 해당 위키의 메인 화면(대문)의 전체 주소에서 문서명 주소 부분을 뺀 나머지 전체주소에 /$1을 추가한 주소를 적습니다.

위키백과를 예로들면

https://ko.wikipedia.org/wiki/위키백과:대문

대신

https://ko.wikipedia.org/wiki/$1

를 적어주면 됩니다.

아래 그림은 예시입니다.

위 그림처럼 그대로 입력하셔도 되고 접두어를 다른 것으로 바꾸셔도 됩니다.

항목을 채운 후 추가 버튼을 눌러줍니다.

위와 같은 화면이 나옵니다. 이제 제대로 추가되었는지 확인해봅시다.

특수:인터위키를 위키 검색 창에 입력해줍니다. 그러면 인터위키 데이터 보기 및 편집 문서를 볼 수 있습니다. 하단을 보면 위 그림처럼 접두어가 추가된 것을 볼 수 있습니다.

인터위키는 무사히 설정되었습니다. 위키 검색창에 위백:위키배과:대문을 입력하면 바로 위키백과 대문 화면으로 점프할 수 있습니다.