Skip to content

Headless CMS Strapi 사용하기

계속해서 WordPress를 이용하다가 이번에 진행하는 프로젝트는 프론트엔드를 React로 개발해 보고 싶어서 백엔드를 어떻게 구성할지 생각하다가 Headless CMS라는 것을 알게 되었다.

Headless CMS는 말 그대로 기존의 CMS에서 머리 부분은 떼어낸 구조이다. 백엔드 부분은 CMS 서비스를 이용하는 것처럼 Admin 페이지나 기타 관리할 수 있는 것이 이미 구현되어 있고 프론트 부분은 API를 이용해서 직접 개발할 수 있다.

Headless CMS도 종류가 여러 가지 있는데 처음에는 익숙한 WordPress를 Headless CMS로도 사용할 수 있다고 해서 그렇게 사용하려 했다. 이전에 WordPress rest api도 사용해본 경험이 있어 쉽기도 하고 콘텐츠를 관리하는 것도 쉬울 것 같아서 인데, 개발 공부도 할겸 이번에는 Strapi를 사용하려 한다.

Strapi는 WordPress와 달리 Headless CMS 전용으로 만들어진 서비스이기 때문에 콘텐츠 관리가 아니라 개발목적에는 더 적합하기도 하다.

express를 사용해서 서버를 만들 백엔드를 만들 때 잘 맞지 않는 것 같아서 nest js를 공부해보려고 했는데 Strapi는 node js 기반이기 때문에 nest js를 공부하는 데에도 도움이 될 것 같다.

https://github.com/strapi/strapi Strapi github

https://docs.strapi.io/ Strapi docs

docs도 잘 정리되어 있는 것 처럼 보인다.

install부분에 들어가서 설치를 진행할 수 있다.

설치를 진행하다 알게 되었는데 찾아볼 땐 Mongo DB를 지원하는 것 같았는데 버전 업데이트가 되면서 더이상 지원하지 않는 것 같았다.

아래 명령어를 통해 설치를 진행해준다.

설치중에 installation type을 고를 수 있다. database를 선택하려면 custom모드로 설치해야 하는 것 같은데, 일단 quickstart로 설치를 진행했다.

파일을 확인하면 잘 설치 되어있는 것을 볼 수 있다.

자동으로 admin에 접속하는 페이지도 열린다. 주소는 http://localhost:1337/admin

admin 회원가입을 해주면 아래 처럼 바로 admin 페이지로 접속할 수 있다.

들어가자마자 content type을 설정할 수 있는 화면으로 안내한다.

WordPress는 별도의 custom post type을 만들 때 직접 소스를 수정하거나 별도의 플러그인을 이용해서 해야 했는데 역시 Headless CMS에서 제공하는 방법이 훨씬 좋아 보인다. WordPress의 딱딱한 admin을 보다가 Strapi로 오니 UI의 차이도 크게 다가와서 선택하길 잘했다는 생각이 든다.

Leave a Reply

Your email address will not be published. Required fields are marked *