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