| r132 | ||
|---|---|---|
| r128 (삭제된 사용자) | 1 | [[분류:openNAMU]] |
| r120 (삭제된 사용자) | 2 | [include(틀:위키 엔진)] |
| r129 | 3 | ||<-2><table align=right><table width=400><tablebordercolor=#009183><tablebgcolor=#fff,#000> {{{#!wiki style="margin: -5px -10px; padding: 7px 10px; background-image: linear-gradient(to right, #007d72, #00a495)" |
| r107 (삭제된 사용자) | 4 | {{{#fff '''{{{+1 openNAMU}}}''' [br] 오픈나무}}}}}} || |
| r129 | 5 | ||<-2><bgcolor=#fff,#000> [[파일:openNAMU.png|width=200px]] || |
| 6 | ||<colbgcolor=#009183><colcolor=#fff> '''종류''' ||<colbgcolor=#fff,#000>[[위키 엔진]] || | |
| r114 | 7 | || '''개발 시작''' ||[[2016년]] 4월 23일 || |
| r105 | 8 | || '''개발자''' ||[[https://github.com/surplus-dev|surplus-dev]] || |
| r104 | 9 | || '''언어''' ||[[한국어]], [[영어]] || |
| r105 | 10 | || '''안정화 버전''' ||v3.4.5-stable1^^(2022년 6월 12일)^^ || |
| r123 | 11 | || '''웹사이트''' ||[[https://github.com/2DU/openNAMU|GitHub]] [br][[https://2du.pythonanywhere.com/w/메인|테스트 위키]] || |
| r3 | 12 | [목차] |
| r104 | 13 | [clearfix] |
| r1 | 14 | == 개요 == |
| r104 | 15 | {{{#!folding [구동 화면 펼치기 · 접기 ] |
| r129 | 16 | ||<tablebgcolor=#fff,#000> {{{#!wiki style="margin: -6px -10px" |
| r100 | 17 | [[파일:aed9ff_on-js.png|width=97.2%]]}}} || {{{#!wiki style="margin: -5px -10px" |
| 18 | [[파일:54f63c_on-fi.png|width=100%]]}}} || | |
| 19 | ||<width=50%> JSON 기반 버전 || 파일 기반 버전 || | |
| 20 | || {{{#!wiki style="margin: -6px -10px" | |
| 21 | [[파일:onamu316.png|width=87%]]}}} || {{{#!wiki style="margin: -5px -10px" | |
| 22 | [[파일:openNAMU v3.4.5.jpg|width=100%]]}}} || | |
| 23 | || v3.1.6 || v3.4.5 || | |
| r104 | 24 | ||<-2> 파이썬 기반 ||}}} |
| r16 | 25 | * [[https://github.com/2DU/openNAMU|GitHub]] |
| r41 | 26 | * [[https://github.com/2DU/openNAMU/issues|이슈 트래커]][* 간단한 이슈는 다른 개발자도 담당한다고 한다.] |
| r125 (삭제된 사용자) | 27 | * [[https://2du.pythonanywhere.com|테스트 위키]][* [[https://github.com/2du/openNAMU/issues/659|기존에는 GitHub의 자체 기능을 이용했다.]] ~~[[https://github.com/2du/openNAMU/wiki|링크]]~~(없어졌다)] |
| r1 | 28 | |
| r125 (삭제된 사용자) | 29 | [[알파위키]]의 [[알파위키:문법 도움말|나무마크]] 문법을 지원하는 [[Python|파이썬]] 기반 [[위키 엔진]]이다. 기존에는 [[Node.js]]로 개발됐었다. |
| r1 | 30 | |
| r114 | 31 | 호스팅은 [[Python|파이썬]] 3.7 이상을 사용할 수 있는 기기에서 동작이 가능하다. 윈도우, 우분투는 물론이고 라즈베리 파이, [[안드로이드(운영체제)|안드로이드]]에서도 동작이 가능하며, PyDroid 3 등의 파이썬 3을 구동하는 애플리케이션을 사용한다. 파이썬 3.7부터 호스팅할 수 있다. |
| r1 | 32 | |
| r125 (삭제된 사용자) | 33 | 파이썬 3.7을 지원하지 않는 Windows XP에서는 호스팅할 수 없다. 즉 Windows Vista부터 가능하다. --지못미 엑스피-- |
| r32 | 34 | |
| r16 | 35 | == 작동 원리 == |
| r125 (삭제된 사용자) | 36 | 원래는 Node.js Express 기반이였고 JSON에 모든 데이터를 기록하는 형태였으나, 한 번 엎어진 이후로 파일에 기록하는 모니위키 형식을 띄게 되었다. --그래서 엄밀히 말하면 [[the seed]]보다 [[모니위키]]에 가깝다-- |
| r1 | 37 | |
| r114 | 38 | 그래서 구조적 문제를 해결하기 위해서 MySQL로 돌아가는 오픈나무가 [[https://github.com/2DU/Ownet|개발 중]]이었는데 편하게 하려고 파이썬으로 바꿨다고 한다. 또 개인용으로 쓰기 좋고 백업이 편한 디비를 찾다가 SQLite로 바꾸었다. 그러다가 MySQL도 같이 지원하게 된다. |
| r1 | 39 | |
| r131 | 40 | 비밀번호는 처음에는 bcrypt로 암호화했다가 현재는 bcrypt에 큰 문제가 있어 [[SHA-3]] 혹은 [[SHA-256]] 방식만 지원한다. 웬만하면 SHA-3를 사용하라는 개발자의 말이 있으니 유의할 것. |
| r42 | 41 | |
| r16 | 42 | === 역사 === |
| r114 | 43 | * 저장 방법: JSON -> 파일 -> MySQL -> SQLite -> MySQL(및 MariaDB) 및 SQLite |
| r34 | 44 | * 프레임워크: Express.js -> Flask -> bottle[* 2.0.0부터 적용] -> Flask[* 2.6.0부터 적용] |
| r114 | 45 | * 프로그래밍 언어: Node.js -> [[Python]] |
| r19 (삭제된 사용자) | 46 | |
| r1 | 47 | == 장단점 == |
| 48 | === 장점 === | |
| r71 | 49 | * 설치가 간단하다. |
| r72 | 50 | * 설치 후 즉시 사용할 수 있다. |
| r73 | 51 | * 나무마크를 지원한다. |
| r130 | 52 | * 쓸모 있는 기능 다수 보유[* 여러 가지 필터, 투표 기능 등]한다. |
| r75 | 53 | * SQLite의 경우 DB 프로그램을 설치 필요가 없다. |
| r19 (삭제된 사용자) | 54 | |
| r1 | 55 | === 단점 === |
| r114 | 56 | * 파이썬 지원 호스팅 및 서버가 필요하다. |
| r77 | 57 | * 구조가 어설프다. |
| r78 | 58 | * 확장기능이 없다.[* 다만 커스텀 코드라는 기능으로 대체되었다.] |
| r127 | 59 | * 텍스트로만 기록을 저장하기 때문에 금방 용량이 커지며, 이로 인해 대형 위키에 부적합하다. |
| r80 | 60 | * VirtualHost를 지원하지 않는다. |
| r19 (삭제된 사용자) | 61 | * 이름공간이라는 개념이 없다. 사용자 문서는 그냥 앞이 user:로 시작되는지 확인하고 권한을 결정할 뿐이다. |
| r94 | 62 | * 보안 이슈가 가끔 발생한다. |
| r1 | 63 | |
| r82 | 64 | == 사용하는 위키 == |
| r28 | 65 | * [[오픈테섭]] |
| 66 | * [[시드위키]] | |
| r111 | 67 | |
| 68 | === 없어진 위키 === | |
| r113 | 69 | * [[DICC위키]] |
| 70 | * [[바다위키#s-2|신 바다위키]] | |
| 71 | * 인싸위키 | |
| 72 | * 허수위키 | |
| 73 | * MGWiki | |
| 74 | * [[러블리즈위키]] | |
| r125 (삭제된 사용자) | 75 | * [[알파위키/역사/붕괴 후 혼란기|2차 알파위키]] |
| r113 | 76 | * [[대한위키실록]] |
| r116 | 77 | * [[오픈키위]] |
| r111 | 78 | |
| r16 | 79 | == 기타 == |
| 80 | * 예전에는 개발자가 개발을 포기했으나 다른 개발자가 다시 잡고 개발 중이다. | |
| r125 (삭제된 사용자) | 81 | * 위키엔진을 왜 만들었냐면 '''도쿠위키랑 모니위키를 써봤는데 맘에 안 들어서'''라고 한다. [[https://2du.pythonanywhere.com/w/오픈나무|관련 문서]] |
| 82 | * 3.x 버전부터 한국어와 영어가 지원되기 때문에, 한글판에서도 영어가 좀 섞여 있다. | |
| 83 | * 3.1.x부터는 점점 JavaScript를 활용하는 추세이다. 따라서 JavaScript를 끄면 토론이 더 이상 불가능하며 일부 렌더링이 되지 않는다. | |
| r84 | 84 | * 2020년 8월 11일부로 안정화(stable), 베타(beta), Dev(카나리아)의 3가지 빌드로 구분된다. 깃허브에서는 브랜치를 고르지 않으면 기본적으로 베타 버전이 내려받아진다. |
| r125 (삭제된 사용자) | 85 | * '''v3.4.5 (stable2) (beta3) (dev59)''' 버전은 로그인 하면 왜인지 500 Internal Server Error 라는 에러문구가 뜬다. |
| r22 (삭제된 사용자) | 86 | [각주] |
| r125 (삭제된 사용자) | 87 | [include(틀:문서 가져옴/나무위키, title=openNAMU, version=182)] |