스프링노트 기반의 블로그 서비스인 슬로거(Slugger)의 설치 매뉴얼입니다. 작성자의 Mac환경과 호스팅 환경에서만 테스트 했으므로 부족할 수 있습니다. 문서 작성에 함께 참여하고자 하거나, 문서의 부족한 부분과 오류에 대해서는 작성자의 미투데이에 댓글 부탁드립니다. 편의상 존칭은 생략합니다.
서브버전 저장소로부터 슬러거를 체크아웃 받는다. 서브버전 클라이언트를 직접 설치해서 아래의 커맨드를 입력하거나 eclipse와 같은 IDE를 통해 체크아웃 받으면 된다. 서브버전 사용법은 본 문서의 범위를 벗어남으로 설명하지 않는다.
TBD
블로그 엔트리 페이지는 블로그에 공개하고자 하는 스프링노트 글 목록을 관리하는 페이지이다. 새로운 페이지를 생성하고 최신글이 위쪽에 위치하도록 아래 그림 처럼 링크를 생성한다. 작성한 페이지의 제목은 무엇이든 상관없으며 페이지의 고유번호를 기억한다. 페이지 주소가 http://pragmatic.springnote.com/pages/397667의 경우 397667이 이 페이지의 고유번호이다. 페이지의 고유번호는 블로그 설정 정보를 입력할 때 사용된다.
자신의 스프링노트에서 블로그 사이드바로 표시될 새로운 페이지를 만든다. 사이드바는 블로그의 메인 영역이 아니므로 글을 작성할 때 폭이 너무 넓지 않도록 주의한다.
아래와 같이 블로그 메뉴로 공개하고 싶은 항목들을 나열하면 된다. 엔트리 페이지와 마찬가지로 페이지의 고유번호를 기억한다.
프로퍼티 페이지는 스프링노트에서 작성된 글과 미투데이에서 작성된 댓글을 연결시켜주기 위한 정보를 저장하는 페이지이다. 페이지와 댓글의 연결 정보는 JSON 형식으로 기록되며 여기서 필요한 작업은 단순히 이런 정보가 저장되기 위한 빈 페이지를 생성하고 위에서와 같이 이 페이지의 고유번호를 기억하는 것이다. 정보는 슬러거가 생성하며 사용자가 직접 편집할 필요가 없는 페이지이다.
스프링노트에 접근하기 위한 인증 정보를 편집한다. config 폴더의 springnote.yml.example 파일에서 example을 제거하고 위에서 발급받은 어플리케이션 키, 사용자 키와 자신이 키를 발급받은 오픈아이디를 입력한다.
# config/springnote.yml
app_key: 0ffb2a7cd1d3301d7f101a45dce1eb79b89c5112 # 인증센터를 통해 발급 받은 어플리케이션 키 (예제로 입력된 데이터)
user_openid: http://pragmatic.myid.net/ # 스프링노트 사용자로 등록한 자신의 오픈 아이디
user_key: 0cdb85e7e2e21e2321acefa8bc7a739db235d312 # 인증센터를 통해 발급 받은 사용자 키 (예제로 입력된 데이터)
미투데이 댓글 서비스를 사용하기 위한 인증 정보를 편집한다. config 폴더의 me2day.yml.example 파일에서 example을 제거하고 위에서 발급받은 정보를 입력한다. post용 사용자와 comment용 사용자 두 명의 사용자 정보를 입력해야 한다. 미투데이에 포스트하는 아이디와 해당 포스트에 달린 댓글을 작성하는 아이디를 구분하는데 사용되며 Comments To Me 기능을 활용하기 위함이다.
# config/me2day.yml
app_key: 908e39812da5a00a2bfbd3dd14eb9a24 # 미투데이 어플리케이션 키 (예제로 입력된 데이터)
post:
마지막 설정 파일은 블로그에 대한 각종 정보를 처리하기 위한 파일이다. config 폴더의 settings.yml.example 파일에서 example을 제거하고 편집한다. 각 항목 옆의 주석을 보며 작성하면 쉽게 작성할 수 있을 것이다. 주의할 점은 현재는 home_url의 마지막에 '/'를 입력하면 미투데이 댓글에 '//'의 형식으로 링크가 생성되므로 반드시 '/'를 제거하고 적는다. '/'의 포함여부와 관계없이 작동하도록 개선될 필요가 있다.
home_url: http://www.pragmatic.kr # Slugger가 배포될 홈페이지 주소 (주: http://www.pramgatic.kr/ 의 형식으로 입력하면 안됨)
Google Analytics는 사용자의 웹 사이트의 방문자 수, 방문자의 웹 브라우저 환경, 지역 분석 등과 같은 통계 정보를 제공해준다. 이러한 정보를 제공받기 위해서는 아래와 같은 형식의 코드를 웹 페이지에 삽입해야 한다. 사용자의 웹 사이트를 식별하기 위한 코드가 _uacct 정보이고 슬러거는 이 정보를 입력하면 분석 정보를 자동으로 삽입해준다.
README 파일에서 확인할 수 있듯이 슬러거는 기본적으로 다음과 같은 환경을 필요로 한다.
EdgeRails와 rme2day는 이미 슬러거 다운로드에 포함되어 있으므로 추가로 설치하지 않아도 된다. springnote_resources도 설치되어 있지만 다시 설치하는 걸 권장한다.
먼저 springnote_resources 젬을 설치한다. (주: 동일한 명령어라 할지라도 때때로 젬을 찾아오지 못하는 경우가 있다. 명령어를 다시 수행하면 해결된다.)
설치 과정에서 의존하고 있는 젬인 hoe를 설치할지 여부를 묻는다. Y를 선택한다.
정확하게 동일한 인스톨 명령을 수행했음에도 Gem을 찾아오지 못하고 에러가 발생한 경우와
동일한 명령어를 다시 수행해서 제대로 인스톨하고 있는 화면
나머지 두 개의 젬도 동일한 방식으로 설치한다. 설치과정 중에 플랫폼에 따른 설치 옵션은 ruby 전용 최신 버전을 선택하면 된다. 예: 3. hpricot 0.6 (ruby)
이제 자신의 컴퓨터에서 슬러거를 동작하기 위한 준비 가정은 모두 끝났다.
슬러거의 최 상위 디렉토리에서 서버를 동작한다.
서버가 정상적으로 실행됨
서버가 정상적으로 실행되었으니 위에서 편집한대로 블로그 화면이 나오는지 확인해보자. 웹 브라우저를 열어서 아래의 주소를 입력한다.
이제 근사한 블로그가 생겼다. 위에서 설정한 RSS 주소를 통해 Feed가 제대로 동작하는지, 댓글이 제대로 동작하는지, 미투데이에 댓글이 어떤식으로 작성되는지 확인해보자.
슬러거 실행화면
레일스 어플리케이션을 배포하는 작업은 호스팅 환경에 따라서 다양하며 다양한 환경에 대해 다루는 건 본 문서의 범위를 벗어난다. 하지만, 사용자가 젬을 자유롭게 설치할 수 있는 경우가 드물고 서버의 운용 정책에 따라서 잼의 버전이 결정될 수 있으므로, 슬러거만을 위한 젬 구성하기 등에 대해서는 공통적으로 적용할 수 있는 사항이므로 설명한다.
TBD
TBD