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

공정위 광고 문구 Ver 2.0

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

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

    아이노드Inode는 Linux/Unix 파일 시스템에서 사용되는 자료 구조입니다. 모든 파일과 디렉토리는 1개의 아이노드를 가지고 으며,각 1개의 아이노드는 64Byte로 이루어져 있습니다. 워드프레스 호스팅을 사용하면서 Inode 수가 많아지다 체크하게 되었습니다. 디렉토리 내용을 확인할 수 있는 ls 명령어에 -i 옵션을 주었을 경우 inode 갯수를 확인할 수 있습니다. 명령어로 Inode 확인 wp-includes 28개의 아이노드가 있음을 알 수 있으며(폴더를…

  • [WP] 워드프레스 미디어 파일 업로드 오류: 업로드한 파일을 wp-content/uploads/20xx

    호스팅 업체가 아닌 워드프레스 웹사이트를 직접 운영하는 경우 “업로드한 파일을 wp-content/uploads/20xx/07(으)로 이동할 수 없습니다.“와 같은 워드프레스 미디어 파일 업로드 오류 메시지를 확인하는 경우가 있습니다. 호스팅 업체에서 서비스를 받고 있다면 별도의 문의를 통해 문제를 해결할 수 있으며, 직접 관리하는 서버의 경우 직접 문제 해결을 해야 합니다. ✅ 워드프레스 미디어 파일 업로드 오류 원인 워드프레스…

  • Perfmatters 플러그인 리뷰 & 가이드: 3년 동안 사용한 워드프레스 성능 최적화 설정 방법

    Perfmatters 플러그인은 워드프레스 최적화 플러그인 중에서도 가볍고 강력한 퍼포먼스를 제공하는 도구입니다. 불필요한 스크립트와 리소스를 손쉽게 제어해 페이지 로딩 속도를 개선하고, 서버 부하를 최소화할 수 있습니다. 3년 이상 사용하면서 느낀 점은, 단순한 속도 향상을 넘어 사이트 전체의 안정성과 관리 편의성을 높여준다는 점이었습니다. 현재 이 웹사이트는 WP Rocket Cache 플러그인과 Perfmatters를 함께 사용하고 있습니다. 이…

  • Autoptimize: 워드프레스 최적화 플러그인

    워드프레스 성능 향상을 위한 방법으로 캐시 플러그인 외 최적화 플러그인 설치를 고려할 수 있습니다. 대표적인 성능 향상 플러그인으로 Autoptimize, Asset CleanUp, Perfmatters 이 세 가지 플러그인을 들 수 있습니다. 3개의 플러그인은 코드 및 리소스 최적화 분야에서 가장 대표적으로 언급되는 워드프레스 성능 향상 플러그인들입니다. 캐시 플러그인은 페이지 로딩 속도를 빠르게 하기 위해 서버 부담을…

  • 워드프레스 “There has been a critical error on your website” 오류 원인과 해결 과정

    워드프레스 관리자 페이지에서 작업 중 다른 페이지는 문제가 없었으나 [업데이트] 페이지를 접속하면 “there has been a critical error on your website. please check your site admin email inbox for instructions.” 오류 메시지가 확인 되었습니다. 워드프레스 “웹사이트에 치명적인 오류가 있습니다.”와 같은 문제 발생 시 빠른 해결 방법은 바로 원인 파악을 하는겁니다. 1. There has…

  • [WP] 워드프레스 크론을 리눅스 크론으로 교체하기

    워드프레스 크론을 말하기 전에 먼저 크론(cron)에 대해 확인해 보겠습니다. 크론은 자동화 된 예약 시스템입니다. 정해진 시간에 작업을 수행하게끔 지정된 프로그램입니다. 리눅스에서 항상 실행중인 프로그램을 뜻 하는 데몬(daemon)은 백그라운드에서 여러가지 작업을 합니다. 데몬 중에 크론이 있다고 보면 됩니다. 1. 워드프레스 크론[wp-cron] 워드프레스 크론 즉, wp-cron은 워드프레스 코어 그리고 테마와 플러그인이 업데이트 되었는지 확인하는 작업에…