Giới thiệu Ghost CMS – Nodejs Open Source Platform cho Website / Blog


Giống như WordPress CMS cho PHP, Ghost là 1 CMS (Content Management System – Hệ thống quản trị nội dung) được viết bằng ngôn ngữ lập trình Nodejs (Javascript). Ghost được sử dụng nhiều để tạo ra các blog, nhưng chúng ta có thể sử dụng, lập trình nó thành các website, shop, …

Giới thiệu về Ghost CMS

  • Phát triển bởi: Ghost Foundation
  • Phát hành lần đầu: 14/11/2013
  • Repository: github.com/TryGhost/Ghost
  • Viết bằng JavaScript
  • OS: Cross-platform
  • Nền tảng: Node.js
  • Loại: Blog software
  • Website: ghost.org

Những ưu điểm khi sử dụng Ghost làm Website / Blog

  • Cài đặt dễ dàng, nhanh chóng
  • Bộ soạn thảo đơn giản, dễ sử dụng
  • Quản lý nội dung
  • Hỗ trợ lịch đăng bài viết
  • Hỗ trợ SEO
  • Free, Open Source
  • Có công cụ quản lý Ghost CLI
  • Tích hợp HTTPs free thông qua Let’s Encrypt
  • Hỗ trợ API để tạo và quản lý bài viết

Hướng dẫn cài đặt Ghost trên Ubuntu 18.04 LTS

Yêu cầu hệ thống

Dưới dây là yêu cầu hệ thống mà Ghost khuyến nghị (Tại thời điển viết bài này)

  • HDH Ubuntu 16.04 hoặc 18.04
  • NGINX Web Server
  • Node.js v10 LTS
  • MySQL 5.5, 5.6, or 5.7
  • Hệ thống Systemd
  • Một server với ít nhất 1GB memory, Chúng tôi khuyến khích các bạn nên sử dụng Vultr Cloud VPS
  • Một domain

Hướng dẫn cài đặt

Bước 1: Cập nhật packages lên mới nhất

sudo apt-get update
sudo apt-get upgrade

Bước 2: Tạo user để cài đặt và quản lý Ghost

Sử dụng command adduser để tạo và gán quyền sudo cho user

Chú ý: User này không nên đặt tên là ghost vì có thể bị conflict với user của Ghost CLI

sudo adduser <user>
sudo adduser <user> sudo

VD: Tạo user là admin

Sau đó login vào user admin bằng command:

su - admin

Bước 3: Cài đặt Nginx Web Server

sudo apt-get install nginx

Nếu sử dụng tường lửa thì cần cho phép Nginx Web Server

sudo ufw allow 'Nginx Full'

Bước 4: Cài đặt và cấu hình MySQL Server

sudo apt-get install mysql-server

Tạo Database và MySQL User cho Ghost

sudo mysql
mysql> CREATE DATABASE <database_name> CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;          
mysql> CREATE USER <mysql_user>@localhost IDENTIFIED BY '<password>';
mysql> GRANT ALL PRIVILEGES ON <database_name>.* TO <mysql_user>@localhost;
mysql> exit

Bước 5: Cài đặt Nodejs

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash
sudo apt-get install -y nodejs

Bước 6: Cài đặt Ghost CLI

sudo npm install ghost-cli@latest -g

Bước 7: Cài đặt Ghost CMS

Tạo thư mục chứa source code:

sudo mkdir -p /opt/www/ghost
sudo chown <user>:<user> /opt/www/ghost
sudo chmod 775 /opt/www/ghost
cd /opt/www/ghost

Cài đặt ghost

ghost install

Quá trình cài đặt, Ghost sẽ yêu cầu các bạn những thông tin sau đây:

  • Enter your blog URL: <blog_url>
  • Enter your MySQL hostname: localhost
  • Enter your MySQL username: <mysql_user>
  • Enter your MySQL password: <mysql_user_password>
  • Enter your Ghost database name: <database_name>
  • Do you wish to set up Nginx? Yes
  • Do you wish to set up SSL? Yes
  • Enter your email (For SSL Certificate) admin@vinasupport.com
  • Do you wish to set up Systemd? Yes
  • Do you want to start Ghost? Yes

Sau khi cài đặt hoàn tất chúng ta truy cập đường dẫn https://<blog_url>/ghost để cài đặt ban đầu

Đầu tiên là màn hình “Welcome to Ghost” => Bấm [ Create your account ]

Nhập thông tin về website / blog của bạn => Bấm [ Last step: Invite staff users ]

Bấm đường link “I’ll do this later, take me to my site

Kết quả cuối cùng chúng ta đã vào trang quản trị của Ghost CMS

Còn đây là theme mặc định của Ghost

Gỡ cài đặt Ghost

Trường hợp cài đặt thất bại, chúng ta có thể gỡ cài đặt bằng command sau:

ghost uninstall

Hoặc cấu hình lại bằng command:

ghost setup

 

Nguồn: vinasupport.com

 

             
SHARE

Bài viết liên quan

Có 1 bình luận trong bài viết “Giới thiệu Ghost CMS – Nodejs Open Source Platform cho Website / Blog”

  1. em cũng đang dùng 1 nền tảng này cho mộ blog cá nhân, chạy nhanh lắm

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web