[include(틀:포크/나무위키, 문서명=미디어위키)] ||<table width=350><table align=right><bgcolor=#ffffff> [[file:미디어위키 로고.svg|width=80%]][* 무려 '''17년''' 이라는 오랜 기간 동안 사용되었던 구 로고 [[file:미디어위키 구 로고.svg|width=210&bgcolor=#ffffff]]] || || {{{+1 MediaWiki}}} || [목차] [clearfix] == 개요 == [[https://www.mediawiki.org|주소]] [[위키미디어 재단]]에서 개발, 배포하는 세계적인 설치형 위키프로그램으로 [[오픈소스]] [[위키 엔진]]. [[PHP]] 기반이고, 라이선스는 [[GPL|GPLv2+]]을 사용한다. 이 엔진을 쓰는 가장 잘 알려진 위키는 [[위키백과]]로 이 엔진 자체가 처음부터 위키백과를 위해 만들어진 것이다. 단, 미디어위키가 위키백과에 처음 쓰인 건 [[2002년]]으로, 미디어위키 개발 전의 초창기에는 [[http://www.usemod.com/cgi-bin/wiki.pl|유스모드 위키]]를 사용했다. == 특징 == 파일 기반이 아닌 [[데이터베이스|DB]]를 사용한다. 기본적으로 [[MySQL]]을 사용하나, [[PostgreSQL]], [[SQLite]]도 사용 가능하다. 위키백과를 위해 개발되고 최신 기술 도입이 빠른 엔진이라서 성능 최적화가 영 좋지는 않다. 개인 레벨 이상의 규모를 가진 위키중 다수가 이 엔진을 사용하는 이유는 미디어위키 특유의 강력한 기능과 DB를 지원하는 위키 엔진 중 미디어위키 이외에 서비스용 위키에 쓸만한 엔진이 거의 없기 때문이다. 한국어 지원 여부도 마찬가지로, [[http://www.wikimatrix.org/statistic/Data+Storage|wikimatrix.org의 통계]]에 따르면 위키 엔진중 절반 가까이가 DB를 지원하지만, 한국어 지원 엔진은 모두 합쳐도 10여종에 불과하다. 당장 [[the seed]]는 비공개 소프트웨어이며, [[오픈나무]]는 아무리 미디어위키가 최적화 등 병맛인 면이 꽤 있지만, 미디어위키 대비 부족한점이 한두가지가 아니다. 설치 및 사용을 위하여 MySQL 5.5.8 이상, PHP 7.0.0 이상을 최소 사양으로 요구한다. 국내에 웹호스팅은 [[XpressEngine]]이나 [[워드프레스]] 등의 주요 PHP 솔루션들의 최소사양이 버전 5.3 이상으로 올라감에 따라 PHP 버전을 5.3 대로 올렸으나 5.5 버전대는 지원하지 않는 곳이 있으니 사전에 확인이 필요하다. 최신 안정 버전은 1.36.2 버전이고, 최신 LTS 버전은 1.35.4 버전이다. 미디어위키의 버전을 살펴보면 [[LTS]](Long Term Support)라고 표기된 버전이 있는데, 이 버전은 다른 버전보다 지원기간이 길다. 보통 미디어위키의 프로그래밍이 이전 버전에서 크게 변경되면 일반 버전은 1년, LTS라고 표기된 버전은 3년간 지원이 계속된다. 알파 버전은 미리보기 버전이며, 일반적인 방법으로 다운이 불가능하고 [[Git]]를 통해 받아야한다. [[https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce|메일링 리스트]]에 등록하면 버전업이나 보안패치시 메일을 통해 알려준다. 다른 [[위키 엔진]][* [[모니위키]]나 [[도쿠위키]] 등]보다 월등히 많은 기능이 있다. 특히 분류(Category) 기능은 대단히 강력하다. 1.2.5 미만의 모니위키의 경우 분류를 하려면 분류용 문서를 따로 만든 뒤 일일히 수동으로 추가해야 되지만,[* 모니위키에도 분류가 있다. 단 분류를 보려면, 역링크를 이용해야 한다. 다만 미디어위키식 분류도 1.2.5에 도입되었다.] 미디어위키는 분류 문서를 만들어 두고 해당 문서 끝에 분류 태그를 넣으면 분류 문서에 자동으로 추가된다. 여담으로 설치기에 [[문화어|조선말]]이 있다(!) ~~조선말로 해보면 영어가 더 많다~~ === 장점 === * 개발 및 개선이 활발하게 이루어지고 있다. * 검색 기능이 강력하다. * 현존하는 위키 엔진 중에서는 가장 많은 수의 기능을 지원한다. * 확장 기능(Extension)을 통해 여러가지 기능 추가가 가능하다. * 여러 가지 스킨을 쓸 수 있다. * 인스톨러 페이지가 지원되어 설치의 복잡함이 줄어들었다.[* 미디어위키 파일을 서버에 올린 후 설정 페이지에 접속하면 알아서 서버의 현황을 확인하여 설치가 가능한지 여부를 알려준다. 모니위키의 설치 페이지보다 더욱 직관적이고 각 항목마다 도움말이 배정되어 설치 자체가 어렵지는 않게 되었다. 그리고 2012년 5월 하반기에 설치 메시지가 한국어로 번역되어 미디어위키 1.20부터 지원한다.] * 대부분의 기능이 한국어 번역과 지원이 잘 되어 있다. 만약 번역이 되어 있지 않은 메시지가 있다면 [[http://translatewiki.net|이곳]]의 MediaWiki 프로젝트에서 번역할 수 있다. * VisualEditor라는 기능을 통해 [[WYSIWYG]]을 지원한다. * 서버 파일이나 스킨을 수정할 필요 없이 사용자가 직접 CSS를 수정하고 자바스크립트를 적용할 수 있다. 다만 개별 사용자별 CSS는 설정 파일에서 켜주어야 한다. === 단점 === * 전체 위키문법이 상당히 복잡하다.[* [[http://www.aosabook.org/en/mediawiki.html|참고 링크]] 및 [[http://bluebrown.net/blog/archives/1051|번역 링크]] 참조. 이는 후술할 오리마크 등의 확장 기능으로 해결 가능하다. MediaWiki의 공식 확장기능인 VisualEditor로 쉽게 편집할 수 있다. 특히 표 만드는 게 많이 어려워서 [[http://www.tablesgenerator.com/markdown_tables|사이트]]까지 나왔다.] 특히 표 그리기 문법이 복잡하기로 악명이 높으며, 주석 문법[* [[나무마크]]의 경우 주석 문법이 간단하며 주석이 노출될 위치를 지정하지 않아도 된다 --그 덕분에 나무위키가 주석이 겁나 많다고 놀림을 받는 원인이 되었다--. 하지만 미디어위키 문법은 주석 넣는 것도 복잡하고(<ref>주석 내용</ref>) 주석이 노출될 위치도 반드시 지정을 해줘야 한다(<references />). 그런데 이마저도 미디어위키 기본 탑재 기능이 아니라 주석 확장기능을 추가로 깔아줘야 작동한다. 다만 요즘에는 설치 시에 기본적으로 제공하는 확장기능 중 하나이다. 그리고 주석이 노출될 위치를 별도로 지정하지 않으면 알아서 맨 밑에 표시하지만, 스킨이나 미디어위키:Common.css 문서를 수정하지 않는 이상 나무위키처럼 주석 부분과 본문이 구분되지 않는다.]도 골치 아픈 편이다. 그리고 HTML 태그를 그대로 쓰거나 HTML과 유사한 <태그></태그> 마크업을 쓰는 경우도 많다. 다만 HTML 문법은 CSS나 자바스크립트를 적용하거나 데이터를 크롤링하기 훨씬 수월하므로 양날의 검이라고도 볼 수 있다.[* 예를 들어 __밑줄__은 <u>밑줄</u>로 써줘야 하고, 각주 또한 <ref>각주</ref>로 써줘야 한다. 이건 일반적으로 사용할 일이 적어서라고 봐야할 듯.][* 단 [[나무마크]]보다 편리한 부분도 있다. 틀(template)의 경우 미디어위키의 문법이 단순하다. 미디어위키에서는 {{틀 이름|첫 번째 변수|두 번째 변수|...}} 또는 {{틀 이름|변수 이름1=변수1|변수 이름2=변수2|...}} 형식으로 쓰면 틀이 삽입된다. 또 미디어위키는 나무마크와 달리 문서의 목차가 들어갈 위치를 굳이 지정할 필요가 없다. 미디어위키에서는 목차에 관한 명령어를 삽입하지 않을 경우 문단 수가 일정 개수 이상이면 알아서 첫 번째 문단 위에 목차를 생성한다.] * 확장기능 중 [[https://github.com/Oriwiki/php-namumark-mediawiki|나무마크]] 확장 기능이 있다. 흔히 오리마크라고 부른다. 유지보수가 안된지 오래되어 일부 지원이 안되는 문법이 있긴 하지만 어려운 문법을 나무위키 문법으로 대체하기에 좋다. 단, 설치 시 문법 충돌이 생길 수 있다. * 대형 프로젝트를 대상으로 개발되었기 때문에, 소규모로 쓰기에는 상당히 무거운 편이다. * DB가 필요하다. 이 때문에 개인 PC에 설치하기에는 난이도가 높은 편이다. XAMPP나 APMSETUP, 오토셋과 같은 웹 서버 통합 설치툴을 사용하면 가능하나 해당 툴의 유지 관리가 초보자에게는 어렵다. 다만 미디어위키는 개인 PC에 설치해서 개인용으로 쓰라는 엔진이 아니며, APM 내지 EPM이 설치된 서버 컴퓨터에 설치해서 서비스형 위키를 돌리는 것을 기본 전제로 하는 엔진이다. * 대부분의 기능이 번역된 위키 엔진답지 않게, 미디어위키 설명서의 영어 이외의 언어 지원이 부실하다! [[모니위키]]보다는 낫지만 도움말은 여전히 부실한 편. 쉬운 문제는 위키백과의 문법 도움말을 사용할 수 있지만, 설치나 스킨, API나 확장기능(Extension) 등의 관리 및 개발자용 도움말은 얄짤없이 공홈에서 봐야 하며 거의 다 영어다. * 구 버전의 경우 최신 자바스크립트 지원이 부실하다. 서버에서 먼저 자바스크립트를 걸러내는데[* 이것을 리소스로더라고 부른다.], 이 걸러내는 데 쓰는 문법이 구형인 에크마스크립트2012 문법인지라 최신 문법인 ES6을 쓴다 할지라도 걸러져서 파싱이 안 될 수 있다. 1.36부터 리소스로더의 ES6 지원을 시작하였다. * 위키문법의 복잡함을 극복하기 위한 차원에서 VisualEditor을 통해 [[WYSIWYG]]을 지원하고 있지만, 일반적인 위키 편집방식에 익숙한 유저의 입장에서는 오히려 이 쪽이 더 쓰기 불편한 면도 있다. == 미디어위키를 사용하는 위키 == * '''[[위키백과]]를 포함한 [[위키미디어 재단|위키미디어]] 프로젝트''': [[http://www.wikimedia.org]] * '''[[FANDOM]]''': [[https://community.fandom.com/ko/wiki]] - [[FANDOM]]식 미디어위키는 미디어위키를 약간 변형한 것이여서 조금 다르다. 물론 위키 문법 같은 것들에는 딱히 지장은 없다. * [[Miraheze]]: [[https://www.miraheze.org/]] - 미디어위키를 사용하는 위키 호스팅 서비스이다. * [[언사이클로피디아]]: [[http://en.uncyclopedia.co]] * [[백괴사전]]: [[http://uncyclopedia.kr]] - 언사이클로피디아의 [[한국어]]판이다. * [[디시위키]]: [[http://wiki.dcinside.com]] * --[[구스위키]]: [[http://www.goos.wiki/]]-- * [[누리위키]]: [[http://nuriwiki.net/wiki/]] * [[스레디키]]: [[http://thredic.com/wiki/]] * --[[위키쨩]]: [[http://wiki-chan.net]]-- * [[제이위키]]: [[http://jwiki.kr]] * [[제타위키]]: [[http://www.zetawiki.com]] * [[페미위키]]: [[https://femiwiki.com]] * [[풋케위키]]: [[http://footballk.net/mediawiki]] * [[IMFDB]]: [[http://www.imfdb.org/wiki/Main_Page]] * [[IT위키]]: [[http://itwiki.kr/]] * 우리가요: [[https://www.urigayo.kr/]] * 위키소다: [[https://wikisoda.com/]] * --단어위키: [[http://wordwiki.net]]-- * --위키도키 : [[http://wkdk.me]]-- * 오미니아 위키: [[http://omnia.kro.kr]] * --비트맵 위키: [[https://wiki.kuzeent.com]]-- * --피니위키: [[http://finiwiki.com]]-- * 다미위키: [[https://wiki.lgyofficial.com]] * --[[위브위키]]--[* 미디어위키 엔진을 사용하다 오픈나무로 엔진 변경] 미디어위키의 [[https://www.mediawiki.org/wiki/Sites_using_MediaWiki/ko|미디어위키를 사용하는 사이트]]도 참조.(CC BY-SA 3.0에 따라 기여 가능) == 기타 == * 미디어위키와 Invision Power Board(IPB)라는 상용 게시판 소프트웨어를 결합한 [[http://www.ipbwiki.com/|Ipbwiki]]라는 소프트웨어도 있다. 개별 위키 문서의 토론 페이지를 IPB 기반의 게시판으로 바꿔 주고, 위키 본문에 [[BBCode]]를 사용할 수 있게 만들어 준다. 물론 미디어위키를 개발한 위키미디어 재단이나 IPB를 만든 Invision Power Services라는 곳과는 무관한 프로그래머들이 두 소프트웨어를 수정, 결합해 내놓고 있다. 그러니 Ipbwiki를 사용하고자 할 경우 주의할 것. === 편집 필터 === * 미디어위키에서는 편집 필터라는 것도 있는데, 특정 조건에 맞는 편집을 저장하는 것을 시도하면 편집 필터가 작동한다. || [[파일:위키백과필터.png]] || || [[위키백과]]의 편집 필터 로고 || 편집 필터를 사용함으로써 [[문서 훼손]]이나 [[뻘문서]] 생성 등을 방지할 수 있다. 편집 필터가 작동하면 태그, 경고, 불허, [[차단]] 등의 조치가 자동으로 취해진다. * 미디어위키에서는 편집 필터가 작동할 경우 편집 필터가 작동한 기록이 남는다. 따라서 장난을 시도한 것도 기록이 남는다. [[https://ko.m.wikipedia.org/wiki/%ED%8A%B9%EC%88%98:%ED%8E%B8%EC%A7%91%ED%95%84%ED%84%B0%EA%B8%B0%EB%A1%9D|위키백과의 예시]] * 편집 필터가 경고를 주었는데도 불구하고 지속적인 문제를 반복하거나 규정에 심하게 위반되는 편집을 시도할 시 차단될 수 있다. [[파일:편집필터로인한영정.jpg]] === 미디어 위키 알림 === [[나무위키]]의 위키엔진인 [[the seed]]와 비교해 보았을때 상당히 강력한 기능을 가지고 있다. [[https://www.mediawiki.org/wiki/Extension:Echo|Echo 확장기능]]을 통해 구현된다. 문서가 되돌려졌을 때 사용자에게 알림을 전달하는 기능이 있고, 그 외에 나무위키에서도 지원하는 사용자 토론이 편집되었을 때 알림을 보내주는 기능과 다른 문서나 토론에서 자신이 언급되었을 때 알려주는 기능도 있다. == 관련 문서 == * [[위키 엔진]] * [[디시위키]] * [[모니위키]] * [[도쿠위키]] * [[위키백과]] * [[WordPress]] * [[phpBB]] * [[TinyIB]] * [[백괴사전]] == 외부 링크 == * 공식 사이트: [[http://www.mediawiki.org]] * 한국어 사이트: [[http://www.mediawiki.org/wiki/MediaWiki/ko]] * 다운로드: [[http://www.mediawiki.org/wiki/Download]] * 저장소: [[https://git.wikimedia.org/tree/mediawiki%2Fcore.git/master/]] [[분류:미디어위키]]