본문 바로가기

전체 글

(26)
[Docs] 맵 편집기 상위 항목: 설명서 자신만의 공간을 만들고 편집하는 것을 다룬다. 하위 항목 오브젝트 타일 커스텀 맵 타일 공간 디자인 팁 맵 편집기 FAQ 본문 맵 편집기 둘러보기 방 추가하기 방이나 공간을 복제하기 친구와 협업하기 추가된 방 없애기 배경 편집기 (베타 기능) 맵 편집기에서의 배경과 포어그라운드
[Docs] 게더타운 한국어 설명서 학교에서 메타버스로 가상 공간을 구현한다는 소문을 듣고 참여하게 되었는데, 어떻게 만드는 지 아는 것이 하나도 없었다. 그래서 이번에 사용법도 익힐 겸 영문 매뉴얼을 국문으로 옮겨 보기로 했다. 시작하기 맵 편집기 계정과 유료 서비스 이용 프라이버시, 보안 및 이용 약관 트러블슈팅 및 FAQ 기타 작성한 항목이 생길 때마다 링크를 걸어 놓을 계획이다.
[iOS] 아이폰에서 VPNGate 이용하기 VPN 앱을 따로 깔아서 쓰려면 좋은 앱을 찾기가 쉽지 않습니다. 어떤 앱은 유료고, 어떤 앱은 속도에 제약이 있고, 뭐 그런 서비스들이 많습니다. 이번엔 VPNGate로 제약 없이 VPN을 이용하는 방법에 대해 작성해 보겠습니다. 우선 VPNGate는 츠쿠바대학에서 만든 공개 VPN 플랫폼으로, 자신의 컴퓨터를 VPN으로 사용할 수 있도록 해 주는 곳입니다. 한 가지 단점은, 우리가 직접 살아 있는 서버를 찾아서 연결해야 하는 것입니다. https://www.vpngate.net/en/ 일단 여기서 살아 있는 서버를 찾아봅시다. 컴퓨터라면 SoftEther라는 프로그램을 쓸 수 있지만, 아이폰이라면 L2TP/IPsec, OpenVPN 등을 이용해야 합니다. VPN Gate - Public Free VP..
[MC] Dynamic map - Configuration.txt 개인적으로 참고할 일이 있어 부분적으로 한글화 할 생각이다. 나중에 깃헙 위키나 뭐 그런데 한글 설명을 올릴 일이 생긴다면 알아서 내용 가져가도 좋다. https://github.com/webbukkit/dynmap/wiki/Configuration.txt (원문) 1. Configuration.txt 렌더 해상도 설정 (deftemplatesuffix) 렌더 해상도는 지도 퀄리티와 파일 용량에 영향을 줍니다. 값: vlowres(가장 낮음), lowres, hires(기본값), low_boost_hi, hi_boost_vhi, hi_boost_xhi(가장 높음) 저장 방식 (storage-scheme) 지도의 저장 방식을 결정합니다. storage: 로 시작하며 스토리지 설정 부분은 한 칸 들여쓰기합니..
[위키 엔진 개발기] 1. 렌더러 개발 - 시작과 redirect 사실 다른 기능부터 먼저 만들긴 했는데, 나무마크 렌더러에 대해서 먼저 써 보려고 한다. 사실 이걸 내 손으로 다시 만들게 된 이유는 시중에 돌아다니는 렌더러 코드 중 제대로 작동하는 게 없어서 그렇다. 그래서 앞으로 하게 된 삽질들이 여기 기록될 예정이다. 목표는 나무위키;문법 도움말을 넣고 돌렸을 때 문제없이 출력되는 것. 참고로 PHP다. 시작 일단 여느 렌더러처럼 클래스를 활용하기로 했다. 대략 NamuMark라는 상위 클래스 속에 필요한 함수들이 들어 있는 방식이다. public function __construct($txt){ $this->wikitext = $txt; $this->heading_tags = [ '/^====== (.*) ======$/' => ['level' => 6, 'fo..
[SQL] CIDR 목록 검색 예제(IPv4) 위키 엔진을 만들던 중 CIDR 차단 기능을 구현해야 하는데, 이걸 어찌할지 몰라 한참 고민하고 있었다. PHP 상에서 처리를 해야 하나 고민했지만 해답은 SQL에서 찾을 수 있었다. 문제 상황 나는 MariaDB를 운용하고 있었고, 테이블의 각 행에는 차단 대상으로 지정된 CIDR들이 등록되어 있었다. | id | target_ip | |—-|——————| | 1 | 1.2.3.4/32 | | 2 | 123.45.67.0/24 | | 3 | 123.45.0.0/16 | | 4 | 0.0.0.0/1 | 그리고 쿼리를 통해 접속한 IP가 차단 대상에 해당하는지 확인해야 한다. 그래서 특정 IP 주소를 포함하는 CIDR이 테이블 안에 있는지를 살펴야 한다. 검색 끝에 아래와 같은 쿼리를 찾았다. 원래는 CI..
[the seed] 오류 목록 더시드엔진에서 표출되는 각종 오류를 모아보았다. CSRF 방지 토큰이 일치하지 않습니다.: 세션에 남아있는 CSRF 토큰 값과 편집 페이지의 form에 입력된 CSRF 토큰 값이 차이가 있는 경우 문서 내용이 같습니다.: 저장하려는 문서 내용이 편집 전과 동일한 경우 ~의 값은 필수입니다: 필수 입력값을 채우지 않은 경우 expire의 값은 0 이상이여야 합니다.: ACL/aclgroup 적용 기간을 0 이상의 수로 입력하지 않은 경우 aclgroup_group_not_found: 없는 ACL그룹에 추가하려 시도할 때 acl_already_exists: 이미 존재하는 조건의 ACL 규칙을 추가하려는 경우 invalid_aclgroup: 없는 ACL그룹 이름을 ACL 규칙에 추가하려는 경우 invalid_..
[the seed] ACL the seed 엔진을 자체 분석해보고 쓰는 첫 글이 ACL이라는 것은, ACL에 관해서 쓸게 좀 있다는 소리..일 것이다. 이 ACL에 대해서 알아보도록 하자. ACL이란? Access Control List의 줄임말이다. 정보 이용 주체가 정보에 대해 가지는 권한을 정해 놓은 목록이다. the seed에 이런 기능이 있는 것은 아무래도 모니위키를 쓰던 리그베다 위키 시절의 잔재가 아닐까 싶다. the seed의 ACL 구조 더시드엔진에서 ACL은 문서 ACL과 이름공간 ACL로 이루어져 있다. 문서 ACL은 해당 문서 하나에만 적용되지만, 이름공간 ACL은 해당 namespace 안에 있는 모든 문서의 기본값으로 적용된다. 개별 문서 ACL은 이름공간 ACL보다 우선 적용되며, ‘허용’ 규칙이 없으면..