Cách cài đặt Croogo CMS trên Ubuntu 18.04 LTS

theanh

Administrator
Nhân viên
Croogolà một Hệ thống quản lý nội dung (CMS) mã nguồn mở, miễn phí được viết bằng PHP.Hệ thống này được hỗ trợ bởi khung MVCCakePHP.Mã nguồn CMS của Croogo được lưu trữ trênGithub. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn quy trình cài đặt Croogo CMS trên máy chủ Ubuntu 18.04 LTS mới.

Yêu cầu​

  • PHP 5.6 trở lên
  • MySQL 5.7 trở lên
  • Apache với mod_rewritehoặc Nginx

Điều kiện tiên quyết​

  • Máy chủ chạy Ubuntu 18.04
  • Người dùng không phải root có quyền sudo.

Các bước ban đầu​

Kiểm tra phiên bản Ubuntu:
Mã:
lsb_release -ds
#Ubuntu 18.04 LTS
Thiết lập múi giờ:
Mã:
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Cập nhật các gói của hệ điều hành:
Mã:
sudo apt update && sudo apt upgrade -y
Cài đặt các gói vim, git và socat:
Mã:
sudo apt install -y vim gitsocat

Bước 1 - Cài đặt PHP​

Cài đặt PHP và các tiện ích mở rộng PHP cần thiết:
Mã:
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-xml php7.2-intl php7.2-mbstring php7.2-mysql php7.2-pgsql php7.2-sqlite3 php7.2-curl php7.2-xmlrpc php7.2-zip php7.2-gd
Kiểm tra phiên bản PHP:
Mã:
php --version
#PHP 7.2.7-0ubuntu0.18.04.2 (cli) (được xây dựng: 4 tháng 7 năm 2018 16:55:24) (NTS)
Chạy
Mã:
sudo vim /etc/php/7.2/fpm/php.ini
và thiết lập các chỉ thị sau:
Mã:
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Region/City
Sau khi thay đổi, hãy khởi động lại dịch vụ PHP-FPM:
Mã:
sudo systemctl restart php7.2-fpm.service

Bước 2 - Cài đặt MySQL và tạo cơ sở dữ liệu cho Croogo​

Croogo hỗ trợ cơ sở dữ liệu MySQL/MariaDB, PostgreSQL và SQLite3. Trong hướng dẫn này, chúng ta sẽ sử dụng MySQL làm máy chủ cơ sở dữ liệu.

Cài đặt máy chủ cơ sở dữ liệu MySQL:
Mã:
sudo apt install -y mysql-server
Kiểm tra phiên bản MySQL:
Mã:
mysql --version
#mysql Ver 14.14 Distrib 5.7.23, dành cho Linux (x86_64) bằng trình bao bọc EditLine
Chạy tập lệnh mysql_secure installation để cải thiện bảo mật MySQL và đặt mật khẩu cho người dùng root MySQL:
Mã:
sudo mysql_secure_installation
Trả lời từng câu hỏi sau:
Mã:
Bạn có muốn thiết lập plugin VALIDATE PASSWORD không? [B]N[/b]
Mật khẩu mới: [B]your_secure_password[/b]
Nhập lại mật khẩu mới: [B]your_secure_password[/b]
Xóa người dùng ẩn danh? [Y/n] [B]Y[/b]
Không cho phép đăng nhập root từ xa? [Y/n] [B]Y[/b]
Xóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [Y/n] [B]Y[/b]
Tải lại bảng đặc quyền ngay bây giờ? [Y/n] [B]Y[/b]
Kết nối với shell MySQL với tư cách là người dùng root:
Mã:
sudo mysql -u root -p
# Nhập mật khẩu
Tạo một cơ sở dữ liệu MySQL rỗng với utf8mb4bộ ký tự và utf8m4_unicode_ciđối chiếuvà người dùng cho Croogovà ghi nhớ thông tin đăng nhập:
Mã:
mysql>CREATE DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
mysql>GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql>FLUSH QUYỀN;
Thoát khỏi MySQL:
Mã:
mysql>exit
Thay thế dbname, tên người dùng và mật khẩu bằng tên của riêng bạn.

Bước 3 - Cài đặt máy khách Acme.sh và lấy chứng chỉ Let's Encrypt (tùy chọn)​

Không nhất thiết phải bảo mật trang web của bạn bằng HTTPS, nhưng đây là một biện pháp tốt để bảo mật lưu lượng truy cập trang web của bạn. Để lấy chứng chỉ SSL từ Let's Encrypt, chúng ta sẽ sử dụng máy khách Acme.sh. Acme.sh là phần mềm shell unix thuần túy để lấy chứng chỉ SSL từ Let's Encrypt mà không phụ thuộc vào bất kỳ thứ gì.

Tải xuống và cài đặtAcme.sh:
Mã:
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [emailprotected]
cd ~
Kiểm tra phiên bản Acme.sh:
Mã:
/etc/letsencrypt/acme.sh --version
# v2.8.0
Lấy chứng chỉ RSAECC/ECDSA cho tên miền/tên máy chủ của bạn:
Mã:
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue--standalone--home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength ec-256
Sau khi chạy các lệnh trên, chứng chỉkhóa của bạn sẽ nằm trong:
  • Đối với RSA: thư mục /etc/letsencrypt/example.com.
  • Đối với ECC/ECDSA: thư mục /etc/letsencrypt/example.com_ecc.

Bước 4 - Cài đặt và cấu hình Nginx​

Croogocan hoạt động tốt với nhiều máy chủ web. Trong hướng dẫn này, chúng tôi đã chọn Nginx.

Cài đặt Nginx:
Mã:
sudo apt install -y nginx
Kiểm tra phiên bản Nginx:
Mã:
sudo nginx -v
#nginx version: nginx/1.14.0 (Ubuntu)
Cấu hình Nginx cho Croogo bằng cách chạy:
Mã:
sudo vim /etc/nginx/sites-available/croogo.conf
Và điền vào tệp với cấu hình sau:
Mã:
server {

 listen 80;
 listen [::]:80;
 listen 443 ssl;
 listen [::]:443 ssl;

 server_name example.com;

 root /var/www/croogo/webroot;

 index index.php;

 ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
 ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
 ssl_certificate_key /etc/letsencrypt/example.com_ecc/fullchain.cer;
 ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;

 vị trí / {
 try_files $uri /index.php$is_args$args;
 }

 vị trí ~ \.php$ {
 try_files $uri =404;
 include fastcgi_params;
 fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 fastcgi_index index.php;
 fastcgi_keep_conn on;
 }

}
Kích hoạt cấu hìnhcroogo.conf mới bằng cách liên kết tệp đến thư mục sites-enabled:
Mã:
sudo ln -s /etc/nginx/sites-available/croogo.conf /etc/nginx/sites-enabled/
Kiểm tra cấu hình NGINX:
Mã:
sudo nginx -t
Tải lại Nginx:
Mã:
sudo systemctl reload nginx.service

Bước 5 - Cài đặt Composer​

Cài đặt Composer, trình quản lý phụ thuộc PHP toàn cầu:
Mã:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Đã xác minh trình cài đặt'; } else { echo 'Trình cài đặt bị hỏng'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"

sudo mv composer.phar /usr/local/bin/composer
Kiểm tra phiên bản Composer:
Mã:
composer --version
#Composer phiên bản 1.7.2 2018-08-16 16:57:12

Bước 6 - Cài đặt Croogo​

Tạo thư mục gốc của tài liệu nơi Croogo sẽ lưu trú:
Mã:
sudo mkdir -p /var/www/croogo
Điều hướng đến thư mục gốc của tài liệu:
Mã:
cd /var/www/croogo
Thay đổi quyền sở hữu thư mục /var/www/croogo thành johndoe.
Mã:
sudo chown -R johndoe:johndoe /var/www/croogo
Cài đặt gói unzip:
Mã:
sudo apt install -y unzip
Tải xuống bản phát hành mới nhất của Croogo CMS bằng cách sử dụng Composer:
Mã:
composer create-project croogo/app .
composer install
Chỉnh sửa cài đặt cơ sở dữ liệu trong tệp config/app.php bằng cách chạy:
Mã:
vim config/app.php
Chỉnh sửa các thiết lập sau theo tên bạn đã chọn:
Mã:
'username' = > 'your_db_username',
'password' = > 'your_db_password',
'database' = > 'your_db_name',
'encoding' = > 'utf8mb4'
Thay đổi các thiết lập ở trên trong cả hai phần mặc địnhvà kiểm tra.

Thay đổi quyền sở hữu thư mục /var/www/croogo thành www-data:
Mã:
sudo chown -R www-data:www-data /var/www/croogo
Mở trang web của bạn trong trình duyệt web và làm theo hướng dẫn trên màn hình để hoàn tất quá trình cài đặt Croogo.

Bước 7 - Hoàn tất quá trình thiết lập Croogo​

Mở trang web của bạn trong trình duyệt web. Nếu tất cả các yêu cầu được đáp ứng, hãy bắt đầu cài đặt bằng cách nhấn nút "Bắt đầu cài đặt":



Nhập cài đặt cơ sở dữ liệu của bạn:



Tạo tài khoản người dùng quản trị:



Hoàn tất thiết lập:



Để truy cập Croogo admin, hãy thêm /admin vào URL trang web/địa chỉ IP của bạn.

Liên kết​

 
Back
Bên trên