컨텐츠로 건너뛰기

블로그를 시작하려는 당신에게 (1편) (Lock in 록인 전략)

1. 들어가는 글

이 블로그는 처음 Ghost CMS로 시작해서 현재 워드프레스(Wordpress)로 옮겼습니다.
큰 뜻 없이 “Ghost CMS 너로 정했어! “하고 시작했으므로 저도 모르게 당연히 “Lock-in”(이하 록인)되었습니다.
블로그를 옮기려는데 복잡해서 순간 “당했구나”라는 생각에 재미있기도 하고,
블로그 뿐만 아니라, 모든 분야에 적용되는 전략이므로 기록 차원에서 작성합니다.

2. 설치형 블로그(CMS) ?

설치형 블로그(CMS)는 아래와 같이 표현할수 있습니다.

우선 서버에서 뚝딱뚝딱 웹서버(Nginx, Apache, 등등)와 데이터베이스(MySQL, MariaDB), 그리고 기타 필요한 프로그램들을 설치합니다. (Ghost CMS의 경우에는 “Node.js”, Wordpress CMS의 경우에는 PHP를 설치하죠.)

기본적인 설정이 끝나면 우리는 CMS로 콘텐츠를 작성하고, 그 결과물을 봅니다.
저는 CMS를 주방으로, 그 결과물인 글을 음식으로 비유하고 싶습니다.
기타 플러그인과 테마는 조리도구, 접시 쯤 되겠네요.

CMS를 선택한 순간 록인이 시작됩니다.위지윅(WYSIWYG)을 통해서 각각의 CMS는 우리가 입력한 재료를 음식으로 바꾸어줍니다.
우리가 재료를 넣어주면 주방에서 갖가지 조리기구를 통해서 요리해주고, HTML이라는 접시에 담아서 음식을 주고 우리는 먹는거죠.

3. 야크 털 깎기 시작

그런데, 만들어진 음식이 조금 싱거워 소금을 넣으려고 하면, 주방을 뒤집어야합니다. 또, 어떤 음식은 설탕은 절대 넣을수 없다며 직접 주방을 고치라고 합니다. (오픈소스니까 원하는 대로 할 수 있다고)

저의 경우, Ghost CMS(이하 고스트)에서 Wordpress로 옮기게 된 이유가 바로 익명 댓글이었습니다.
가벼운 마음으로 시작했기에, 저는 제 블로그에 오시는 분들의 개인정보를 받기 부담스럽습니다.

하지만 검색을 통해서 오셨다면, 제 블로그 특성상 무언가를 뚝딱뚝딱 하러 오셨을텐데, 막히는 부분이 있으면 제가 아는 범위 한에서 알려드리고 싶었습니다. 그들에게 회원가입을 요구하고 싶지도 않았구요.

여기서 부터 당했구나 싶고, 쎄함이 느껴졌지만 그래도 한번 해볼까 싶어서 했습니다. (야크 털 깎기가 시작되었습니다.)

처음에는 소스를 고쳤는데, 업데이트를 하면 친절하게 주방을 다시 엎어 줍니다. 판올림 할떄마다 주방 공사를 할 수는 없겠다 싶어, “Remark 42”라는 도커 컨테이너로 댓글관리를 하려고 했습니다.

고스트는 엔진엑스를 사용하므로 리버스 프록시로 ”Remark42”에 Rewrite Rule로 꺾어서 서브디렉토리로 집어 넣는데, 여기까지는 좋았습니다.

뭐든지 뽀시락뽀시락 하는 제 특성상 통째로 들어다 옮기는 걸 자주 하는데, 할떄마다 docker compose up, docker compose up 하려니 번거롭기도 하고 Ghost가 너무 예민해서 분명 같은 인스턴스 이미지인데 어떤 인스턴스에서는 “127.0.0.1”과 “0.0.0.0”을 제대로 받는데, 어떤건 loop가 안되고 ‘아 이건 나랑 고스트랑 안맞다.‘ 하고 옮길 준비를 합니다.

4. 전환비용

옮기려고 막상 하니, 전환 비용이 조금 큽니다. 글은 10개 정도 되었는데, 사진도 많고, 고스트에서 동적으로 이미지 주소를 변환해 놨습니다. 뭐 여기까지는 그렇다고 하는데, 유니코드를 지원하지 않는 슬러그가 발목을 잡습니다.또 글을 수정하면서 이미지를 넣었다 뺐다 하면 전부 업로드 되어서 중복 파일은 덤입니다. (나름 최적화 해본다고 AVIF, Webp도 같이 되게 한것도 덤…)

성격상 모든 글의 이미지 이름을 보면 아시겠지만, 깔끔하게 정리하려고 노력합니다.
어떤 글은 40개 가까이 이미지가 들어가기도 하는데, 뭐 어쩔수 없이, 하나씩 수동으로 주소를 바꿨습니다.
틈틈이 하느라 이틀 넘게 걸린것 같습니다.

5. 워드프레스를 선택하다

분명 지극히 자율적으로 선택했지만, 되돌아 보면, 스스로 속박되었습니다.
그래서 저는 다음과 같은 기준을 세우고 방향을 잡아 워드프레스에 정착합니다.

  • 또 마음이 바뀌면 다른데 날아갈 예정이므로 전환비용 줄이기
    (외부 플러그인 최소화, 서버 구성 최소화)

  • 같은 맥락에서 마크다운으로 글을 작성하기

  • 특정 기능이 필요하다면 자바스크립트로 구성하기 (NPM등 라이브러리 활용)

  • 기업의 록인 전략 상품 (클라우드플레어 프록시, R2 스토리지)등을 선택할 때 전환비용 고려하기

  • 기업의 BM과 나의 요구가 맞는지 잘 확인하기

  • 누구나 할 수 있게 학습곡선이 완만한 것.

6. 앞으로 시리즈의 방향

거의 모든 소비의 영역에서 록인 효과를 기대하는 사회로 가고 있지요.
대부분의 상용 프로그램도 구독제 형식으로 가고, 자신들의 플랫폼 안으로 사용자들을 넣고 싶어합니다.
(클라우드 형식의 오피스, 전자제품 등등)

우리 고객의 입장에서는 일장일단이 분명합니다.
테스트 차원에서 제공하는 것과 우리를 가두기 위해서 사용하는 마케팅을 효과적으로 이용하면 됩니다.
처음 설계부터 전환비용을 최소화 해서 비용 최적화를 할수도 있지요.

설치형 블로그를 할 때, 꼭 서버를 유료로 구매해야하는 것은 아닙니다.
서버를 구매할 수 도있지만 우리를 가두기 위해서 많은 기업은 이미 여러 혜택을 제공합니다. (Free tier)

앞으로의 연재에서 여러가지 방법을 소개하고자 합니다.

오늘도 찾아 주셔서 감사합니다.


Askfront.com (에스크프론트)

초보자도 편하게 질문할 수 있는 자유로운 포럼을 준비했어요! 💬
에스크프론트에서는 NavyStack 가이드뿐만 아니라, 궁금한 모든 질문을 환영합니다. 😊
검색해도 원하는 답을 찾지 못해 답답했던 경험 있으시죠?
🔍 그럴 땐 부담 없이 질문해 주세요!
함께 이야기하며 답을 찾아갈 수 있을 거예요. 🤝
제가 직접 답변드릴 수 있다면 언제든 도와드릴게요. 감사합니다! 🙏