Ghost 다국어 페이지

Ghost 다국어 페이지
Photo by Vladislav Klapin / Unsplash

현재 ghost는 하나의 언어 페이지만 지원하는 것으로 알고 있다. 고스트 가이드 문서에는 시스템 언어만 변경하는 법과 embeding으로 번역 서비스를 이용하는 법을 언급하고 있는데 번역 비용이 든다.

구글링 해보면 여러 방법들이 있는 것 같다. 여기서는 별개의 사이트를 만들어서 해결해보겠다.

언어별로 새로운 ghost를 설치하는 것이다. 가장 쉬운 방법이고 하나의 사이트에 여러 언어 서비스를 제공하는 것 보다 좋은 방법인 것 같다. 왜냐하면 이른바 마이크로서비스 관점에서 보면 분리하는 것이 맞다고 본다. 보통 블로그는 개인이 운영하거나 소규모의 출판사 정도일 것이다. 이런 경우 자신의 모든 컨텐츠를 여러나라 말로 번역하는 것은 현실적으로 어렵다. 그리고 나라마다 원하는 것이 다를 테니 니즈에 맞게 콘텐츠를 올리는 것이 당연하다. 그렇다면 각 언어별로 별개의 콘텐츠를 올리게 될 것이고 이는 별개의 서비스로 봐야할 것이다. 좀 더 얘기해보면 한 쪽 언어의 서비스가 망가지는 일이 발생되어도 여러 서버로 분산 시켜놓으면 다른 언어 서비스는 계속 운영될 수 있지않은가!

별개의 서버를 구축할 것이라면 지난 post를 참고하면 될 것이다.

터미널 접속하여 Ghost 설치
Ghost 공식 개발 페이지를 참고로 AWS EC2인스턴스에 Ghost를 설치하겠다.

만약 동일 서버에 구축하고 싶다면 아래처럼 ghost를 새로 설치한 폴더를 만들고 설치하면 된다. 설치가 되는 동안 호스팅업체에서 신규 언어 url을 위한 레코드를 추가한다. 예를 들면 en.yoursite.com 일 것이다.

sudo mkdir -p /var/www/newlanguage
sudo chown newuser:newuser /var/www/newlanguage
sudo chmod 775 /var/www/newlanguage
cd /var/www/newlanguage
ghost install

설치가 완료되면 ghost는 url과 DB명을 물어볼 것이다. url은 http://en.yoursite.com을 입력하고 DB는 새로 이름을 입력하여 신규DB를 생성하라.

이렇게 하면 두개의 Ghost가 운영될 것이다.

⚠️
여기서 별도 작업을 안한 것 같은데 접속url만으로 사이트가 분기되는 것이 궁금하다면 이유는 이렇다. ghost install 명령만으로 nginx에서 /etc/ngnix/site-available와 /etc/ngnix/site-enabled에 분산처리를 할 수 있는 셋팅 파일(yoururl.conf, yoururl-ssl.conf)을 생성한다. 즉, nginx 에서 알아서 접속 도메인 url에 따라 알맞는 웹페이지가 표시되게끔 ghost install하면서 처리해줬기 때문이다.

이제 두개를 연동해줄 매개체가 필요하다. 언어 변환 버튼 같은 것..
걱정마시라! 아래 post를 참고해서 헤더에 메뉴를 추가하면 된다.

Ghost 헤더에 dropbox 메뉴 추가
post가 많아지면 카테고리도 늘어 날 것이다. 그렇다면 헤더에 dropbox 메뉴를 만들 고 싶어질 것이다. 그 외에도 다국어 블로그를 만든다면 언어 설정을 바꿀 수 있는 드롭박스 메뉴가 필수적으로 있어야할 것 이다.


참고

International SEO: How we made our Ghost Blog Multilingual
Leveraging international SEO is a powerful asset to target multiple markets in different languages. That’s why we decided to make our blog international, applying the same strategy as the one we did with our brand platform.
How to Support Multilingual Pages in Ghost
Currently, a Ghost site can only be in one language. But with a few modifications, there is a way to have a website in multiple languages! ?
Set Up Multilingual Ghost.org Blog
In this post I’ll try to explain my method for setup multilingual Ghost.org blog.
Linux에서 Nginx 포트를 변경하는 방법
Nginx 다중 포트 연결
Nginx를 활용하서 리액트 배포하기로 했다. 현재 Nginx로 다른 한 서비스가 운영되고 있는 상태이고, 거기다 추가적으로 하나를 더 올릴려고 한다. 먼저 나는 AWS-EC2[Linux] 환경에서 미리 기본적으로 깔려진 Nginx을 사용하였다. Nginx의 위치는 /etc/nginx 로 되어있다. nginx에 여러 포트를 설정해주기 위해 주 설정파일은 nginx.conf파일이다. 이 곳에다가 서버 포트설정을 올려주면 된다. 나는 직접적으로 코드를 넣어주는 방식보다, 하나의 디렉토리를 생성하여 import 시켜주는 방식으로 하였다.…
[nginx] 포트별 도메인을 달아보자.
nginx는 다중 포트 연결할수 있는 기능을 제공한다. 우선 nginx의 설정파일을 접속한다. ubuntu에 nginx를 설치했기 때문에 설정파일 위치는 아래였다. 기본 설정은 아래와 같이 되있다. nginx에서 포트를 추가하는 방법은 간단하다. 아래에다 하나 더 만들