Ghost CMS에 cPanel Nodejs 설치 및 관리 방법

Node.js는 Chrome V8JavaScript 엔진 기반 JavaScript 런타임입니다. 보통 기존 JavaScript보다 Node.js를 사용할 경우 웹 사이트의 속도가 빠른 것으로 생각할 수 있으며, 사용 중인 호스팅에서 cPanel Nodejs를 지원할 경우 설정하는 방법에 대해 알아 보겠습니다.

Node.js는 오픈 소스 Javascript 런타임 환경으로, 웹 호스팅 서버에서 클라이언트의 웹 브라우저 대신 Javascript 코드를 실행시키기 위해 사용됩니다. Node.js는 웹 페이지의 콘텐츠를 동적으로 준비하여 클라이언트의 웹 브라우저로 보내기 전에 컴파일하고 실행합니다. 이 접근 방식은 클라이언트 컴퓨터의 컴퓨팅 리소스를 절약하기 위해 Javascript 실행을 최소화합니다.

Node.js

1. cPanel Nodejs 설치

cPanel Nodejs 설치를 위한 첫 번째 서비스하는 호스팅 회사 cPanel에 로그인 했다면, Node.js 앱 설치를 클릭해 줍니다. Ghost CMS를 위한 Node.js일 경우 Ghost CMS가 사전 설치되어 있어야 하며 이 글은 Ghost 기준 Node.js 설치 방법입니다.

cPanel Nodejs 설치 방법 1

애플리케이션 만들기를 클릭합니다.

cPanel Nodejs 설치 방법 2- 애플리케이션 만들기
Node.js version - 설치할 Node.js 버전을 선택합니다.
Application mode - Develogpement와 Production 중에 Production을 선택합니다.
Application root - 애플리케이션 파일을 저장할 폴더의 상대 경로가 아닌 절대 경로입니다. /home/<cpanel 사용자 이름>)를 접두사로 지정해야 합니다
Application URL - node.js 애플리케이션에 액세스할 수 있는 URL입니다. 
Application startup file - 애플리케이션 시작 파일(NAME.js 형식 사용)

1.1 Node.js version

ghost에서 Node.js는 12,14까지 지원하며 14 버전을 권장합니다. cPanel 권장 사항도 14 버전을 권장하고 있습니다.

1.2 Application mode

애플리케이션 모드는 개발(development) 모드와 배포(production) 모드 두 가지로 나뉩니다.

개발 모드의 경우 버그로 이어질 만한 부분을 미리 경고해 주는 코드가 있고 코드 자체가 앱 속도를 느리게 할 수 있습니다. 홈페이지 관리를 위한 경우, 그리고 개발자로써 업무가 필요한 경우 개발 모드를 사용할 수 있습니다. 배포 모드의 경우 로그 기록을 최소한으로 남기며, 성능 최적화를 위해 더 많은 캐싱이 발생합니다.

개발 모드는 별도 설정이 필요 없지만 배포 모드의 경우 개발 모드 파일 [config.developement.json]을 배포 모드 파일로 [config.production.json]을 복사해 줘야 할 수 있습니다.

~]$ cp config.development.json config.production.json

1.3 Application root

애플리케이션 루트는 도메인의 루트 디렉토리에 새 폴더를 생성하는 방향으로 진행합니다.

/home/cpanel 사용자이름/myGhost_node.js(생성할 폴더명)

1.4 Application URL

Node.js가 엑세스 할 수 있는 URL 주소입니다.

ex)ghost.com

1.5 Application URL

Application startup fileApplication root 파일 안에 생성될 파일이름.js입니다.

2. 애플리케이션 관리 인터페이스

설치가 완료된 인터페이스 화면입니다.

cPanel Nodejs 애플리케이션 설치 완료
위 메뉴를 사용하여 생성된 애플리케이션 옵션은 다음과 같습니다.
- Node.js : 애플리케이션 중지 / 애플리케이션 재시작

- Node.js : 버전 변경(이 버전 전환에는 최대 5분이 소요될 수 있음)
- 애플리케이션 모드 : 프로덕션에서 개발로 변경(반대로)
- 애플리케이션 루트: 루트 폴더 수정
- 애플리케이션 URL : 애플리케이션 URL 재지정
- 애플리케이션 시작 파일:  NAME.js 파일 이름 수정

- Detected configuration files : 
NPM 설치 명령 실행( NPM 설치 실행 버튼을 클릭하여 package.json 파일에 설명된 패키지를 설치합니다.)
- Detected configuration files : 환경 변수 추가

그리고 SSH로 접속 후 확인할 내용입니다.

-rw-r--r--  1 id id 556 Jun  9 09:18 config.development.json
-rw-r--r--  1 id id 556 Jun 17 11:42 config.production.json
drwxr-xr-x 11 id id 4096 Jun  9 09:17 content
lrwxrwxrwx  1 id id 55 Jun  9 09:18 current -> /home/uknewco/ha-ghosts/ukcresearch.com/versions/5.50.4
drwxr-xr-x  4 id id 4096 Jun 17 13:13 myGhost_node.js
-rw-r--r--  1 id id 0 Jun 17 11:50 stderr.log
drwxr-xr-x  3 id id 4096 Jun  9 09:17 versions

~]$ ll myGhost_node.js/
total 12
-rw-r--r-- 1 id id 323 Jun 17 13:13 my_app.js
drwxr-xr-x 2 id id 4096 Jun 17 13:13 public
drwxr-xr-x 2 id id 4096 Jun 17 13:13 tmp
~]$

Ghost CMS에 cPanel Nodejs 설정 방법은 네임칩호스트아마다의 설치 방법을 참조 했습니다.

3. cPanel Nodejs 설치 완료 목록

개발 및 배포 모드 어느쪽이든 추가할 수 있습니다.

cPanel nodejs 목록 보기

Similar Posts

  • 워드프레스 DB Collation: utf8mb4_unicode_520_ci

    워드프레스 전용 서버를 구축하기 위한 준비를 APM 설치 후 테스트 도메인으로 워드프레스를 설치했다. 설치 후 데이터베이스를 확인해 보니 워드프레스 DB Collation이 utf8mb4_general_ci가 아닌 utf8mb4_unicode_520_ci로 확인되었다. 워드프레스 utf8mb4_unicode_520_ci가 표준이었나 생각하다가 구글링 후 워드프레스 utf8mb4_unicode_520_ci가 표준이라는 것을 확인했다. 예전에 시간적 여유가 있을 때 utf8mb4_general_ci를 사용했었고 그때는 utf8mb4_general_ci가 표준이었는지 모르겠지만 지금 생각해보니 예전에도 표준 정렬은 unicode_ci를…

  • [WP] 워드프레스 이미지 최적화(Image Optimizer) 방법 2가지

    이미지 최적화(Image Optimizer)란 웹사이트 이미지를 적절한 크기로 줄이거나 압축하는 기술을 뜻합니다. 워드프레스로 운영되는 웹사이트는 사용하는 테마와 각종 플러그인을 포함한 이미지 등에 따라 사이트의 속도가 느려지거나 빨라지는 것이 명확하게 드러납니다. 워드프레스를 포함한 웹사이트의 이미지 크기가 클 경우 사이트의 로딩 속도가 저하됩니다. 너무 큰 이미지를 사용하지 않는 것과 함께 기존에 웹사이트에 업로드 된 이미지 크기를…

  • [WP-Linux] 아이노드란? 워드프레스 호스팅 Inode 주 원인은 많은 사진 양.

    아이노드Inode는 Linux/Unix 파일 시스템에서 사용되는 자료 구조입니다. 모든 파일과 디렉토리는 1개의 아이노드를 가지고 으며,각 1개의 아이노드는 64Byte로 이루어져 있습니다. 워드프레스 호스팅을 사용하면서 Inode 수가 많아지다 체크하게 되었습니다. 디렉토리 내용을 확인할 수 있는 ls 명령어에 -i 옵션을 주었을 경우 inode 갯수를 확인할 수 있습니다. 목차1. cPanel Nodejs 설치1.1 Node.js version1.2 Application mode1.3 Application root1.4…

  • WP CLI: 설치 및 설정 | 워드프레스에서 WP CLI를 사용하는 이유

    워드프레스 사이트를 관리할 때, 리눅스 서버에 직접 SSH로 접속할 수 있고 root 권한까지 보유하고 있다면, WP CLI의 필요성을 크게 체감하지 못 할 수 있습니다. 리눅스의 기본 Command Line Interface는 이미 모든 기능을 제공할 정도로 편리하지만, 워드프레스 사이트를 운영하면서 가끔 씩 WP CLI가 언급됩니다. 자주 언급되는 이유는 단순한 명령어의 대체가 아닌 워드프레스에 특화된 자동화와…

  • [WP] 워드프레스 목차 플러그인 추천[2024년]

    워드프레스로 웹사이트를 운영하면서 여러 플러그인을 설치하고 삭제했지만 특히 워드프레스 목차 플러그인에 대한 개인적인 집착은 워드프레스 사이트를 운영하면서 꾸준하게 구글링 및 목차 플러그인을 비교했다. 아마도 구글에서 Table of Contents 및 wordpress TOC와 같은 검색어로 검색을 100번도 넘게 했을 것이다. 수 많은 목차 플러그인을 설치하고 바꾸기를 반복하며, 결국 현재는 ‘쉬운 목차’ 플러그인을 사용하고 있다. 목차1….

  • [WP] 워드프레스 글 ID 및 카테고리 ID 확인 방법

    워드프레스 사이트를 관리할 때 글 ID를 확인해야 하는 경우가 있습니다. 작업 도중 워드프레스 글 ID는 좌측 하단에서 확인할 수 있습니다. 워드프레스 카테고리 ID 역시 카테고리 페이지에서 동일한 방법으로 확인할 수 있습니다. 메모장에 글 ID를 좀 더 큰 글자로 쉽게 확인하는 방법입니다. 목차1. cPanel Nodejs 설치1.1 Node.js version1.2 Application mode1.3 Application root1.4 Application URL1.5…