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

0

Craft là một CMS mã nguồn mở được viết bằng PHP. Craft cho phép bạn dễ dàng tạo và quản lý nội dung đẹp mắt, đồng thời thiết kế và xây dựng chính xác những gì bạn cần. Đó là CMS an toàn và có thể mở rộng với hệ sinh thái plugin lớn và mã nguồn Craft được lưu trữ trên GitHub. Hướng dẫn này sẽ hướng dẫn bạn qua quy trình cài đặt Craft CMS trên máy chủ Ubuntu 18.04 LTS mới sử dụng Nginx làm máy chủ web và chúng tôi sẽ bảo mật trang web bằng chứng chỉ SSL mã hóa.

Yêu cầu

Thủ công yêu cầu như sau:

  • Phiên bản PHP 7.0 trở lên với các tiện ích mở rộng PHP sau: ( )
  • MySQL 5.5+ với InnoDB, MariaDB 5.5+ hoặc PostgreQuery 9.5+
  • Ít nhất 256 MB bộ nhớ được phân bổ cho PHP
  • Ít nhất 200 MB dung lượng đĩa trống

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

  • Một hệ điều hành chạy Ubuntu 18.04
  • Một người dùng không root với đặc quyền sudo.

Các bước ban đầu

Kiểm tra phiên bản Ubuntu của bạn:

lsb_release -ds
# Ubuntu 18.04.1 LTS

Thiết lập múi giờ:

sudo dpkg-reconfigure tzdata

Cập nhật các gói hệ điều hành (phần mềm) của bạn. Đây là bước đầu tiên quan trọng vì nó đảm bảo bạn có các bản cập nhật mới nhất và các bản sửa lỗi bảo mật cho các gói phần mềm mặc định của hệ điều hành của bạn:

sudo apt update && sudo apt upgrade -y

Cài đặt một số gói thiết yếu cần thiết cho quản trị cơ bản hệ điều hành Ubuntu:

sudo apt install -y curl wget vim git unzip socat

Bước 1 – Cài đặt PHP và các phần mở rộng PHP cần thiết

Cài đặt PHP, cũng như các phần mở rộng PHP cần thiết:

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-curl php7.2-gd php-imagick php7.2-json php7.2-mbstring php7.2-mysql php7.2-pgsql php7.2-zip php7.2-intl php7.2-xml

Kiểm tra phiên bản PHP:

php --version

# PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

Chạy sudo vim /etc/php/7.2/fpm/php.inivà thiết lập memory_limitít nhất 256MB:

memory_limit = 256M

Dịch vụ PHP-FPM được tự động khởi động và kích hoạt khi khởi động lại trên hệ thống Ubuntu 18.04, do đó không cần phải khởi động và kích hoạt thủ công. Chúng ta có thể chuyển sang bước tiếp theo, đó là cài đặt và thiết lập cơ sở dữ liệu.

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

Craft CMS hỗ trợ cơ sở dữ liệu MySQL / MariaDB và PostgreSQL. Trong hướng dẫn này, chúng tôi 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:

sudo apt install -y mysql-server

Kiểm tra phiên bản MySQL:

mysql --version
# mysql  Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using  EditLine wrapper

Chạy  mysql_secure installation script để cải thiện bảo mật MySQL và đặt mật khẩu cho  người dùng MySQL root :

sudo mysql_secure_installation

Trả lời từng câu hỏi:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Kết nối với MySQL shell với tư cách là người dùng root:

sudo mysql -u root -p
# Enter password

Tạo một cơ sở dữ liệu  và người dùng MySQL trống cho Craft CMS và ghi nhớ thông tin đăng nhập:

mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;

Thoát khỏi MySQL:

mysql> exit

Thay thế dbname, usernamevà passwordvới tên của riêng bạn.

Bước 3 – Cài đặt ứng dụng khách và lấy chứng chỉ Encrypt ( tùy chọn ) acme.sh

Bảo mật trang web của bạn bằng HTTPS là không cần thiết, nhưng đó là một cách tốt để bảo mật lưu lượng truy cập trang web của bạn. Để có được chứng chỉ TLS từ Let Encrypt, chúng tôi sẽ sử dụng ứng dụng khách Acme.sh. Acme.sh là một phần mềm shell unix thuần túy để lấy chứng chỉ TLS từ Let Encrypt với độ phụ thuộc bằng không.

Tải xuống và cài đặt  Acme.sh:

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~

Kiểm tra phiên bản Acme.sh:

/etc/letsencrypt/acme.sh --version
# v2.8.0

Nhận chứng chỉ RSA và ECC / ECDSA cho tên miền / tên máy chủ của bạn:

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256

Sau khi chạy các lệnh trên,  chứng chỉ  và  khóa của  bạn sẽ ở trong:

  • Đối với RSA : thư mục.  /etc/letsencrypt/example.com
  • Đối với thư mục ECC / ECDSA : .  /etc/letsencrypt/example.com_ecc

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

Craft CMS có thể hoạt động tốt với nhiều phần mềm máy chủ web phổ biến. Trong hướng dẫn này, chúng tôi đã chọn Nginx.

Tải xuống và cài đặt bản phát hành chính tuyến mới nhất của Nginx từ kho lưu trữ chính thức của Nginx.

Bắt đầu bằng cách tải xuống khóa PGP của kho lưu trữ Nginx:

wget https://nginx.org/keys/nginx_signing.key

Thêm khóa để khóa  apt chương trình:

sudo apt-key add nginx_signing.key

Thêm và thiết lập kho lưu trữ APT chính tuyến Nginx:

sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit

Cập nhật danh sách kho lưu trữ:

sudo apt update

Cài đặt các gói Nginx chính tuyến mới nhất:

sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt

Bắt đầu và kích hoạt dịch vụ Nginx:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Kiểm tra phiên bản Nginx:

sudo nginx -v
# nginx version: nginx/1.15.8

Định cấu hình Nginx cho Craft CMS bằng cách chạy:

sudo vim /etc/nginx/conf.d/craft.conf

Và điền vào tệp với cấu hình sau:

server {

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

  server_name example.com www.example.com;

  root /var/www/craft/web;

  index index.php;

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

  location / {
    try_files $uri/index.html $uri $uri/ /index.php?$query_string;
  }

  location ~ [^/]\.php(/|$) {
    try_files $uri $uri/ /index.php?$query_string;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param HTTP_PROXY "";
  }

}

LƯU Ý : Để cấu hình Nginx hoàn chỉnh và sẵn sàng cho Craft truy cập  https://github.com/nystudio107/nginx-craft . Cấu hình được đơn giản hóa để giữ cho cấu hình dày đặc và đơn giản.

Mở nginx.conftệp và đặt userthành www-data.

sudo vim /etc/nginx/nginx.conf
user www-data www-data;

Kiểm tra cấu hình Nginx:

sudo nginx -t

Tải lại Nginx:

sudo systemctl reload nginx.service

Bước 5 – Cài đặt Trình soạn thảo

Cài đặt Trình soạn thảo, trình quản lý phụ thuộc PHP trên toàn cầu:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; 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 Trình soạn thảo:

composer --version
# Composer version 1.8.0 2018-12-03 10:31:16

LƯU Ý: Các lệnh cài đặt của Trình soạn thảo sẽ thay đổi trong tương lai, vì vậy hãy kiểm tra https://getcomposer.org/doad/ để biết các lệnh cập nhật nhất nếu các lệnh trên không hoạt động.

Bước 6 – Cài đặt Craft CMS

Craft CMS có thể được tải xuống bằng Trình soạn thảo hoặc bằng cách tải xuống thủ công .ziphoặc tar.gzlưu trữ. Trong hướng dẫn này, chúng tôi sẽ sử dụng Trình soạn thảo để tải xuống Craft CMS.

Tạo một thư mục gốc tài liệu trong đó Craft CMS sẽ nằm trong:

sudo mkdir -p /var/www/craft

Điều hướng đến thư mục gốc của tài liệu:

cd /var/www/craft

Thay đổi quyền sở hữu của  /var/www/craft thư mục thành  johndoe.

sudo chown -R [your_username]:[your_username] /var/www/craft

Để tạo một dự án Craft mới, hãy chạy lệnh này :

composer create-project craftcms/craft .

Thay đổi quyền sở hữu của  /var/www/craft thư mục thành www-data:

sudo chown -R www-data:www-data /var/www/craft

Trong trình duyệt web của bạn, hãy đi tới  http://<Hostname>/index.php?p=admin/install (thay thế  <Hostname> bằng tên máy chủ của máy chủ web của bạn). Nếu bạn đã hoàn thành mọi thứ cho đến nay, bạn sẽ được chào đón bởi Trình hướng dẫn cài đặt của Craft.

Bước 7 – Hoàn tất thiết lập Craft CMS

Sau khi mở URL cài đặt của bạn, trang như bên dưới sẽ xuất hiện. Nhấp vào  nút “Cài đặt thủ công” :

Chấp nhận giấy phép bằng cách nhấp vào  nút “Đã nhận” :

Điền chi tiết cơ sở dữ liệu và nhấp vào nút  “Tiếp theo” :

Tạo tài khoản Craft và nhấp vào nút “Tiếp theo” :

PS . Nếu bạn thích bài cách cài đặt Craft trên VPS Ubuntu 18.04 , vui lòng chia sẻ nó với bạn bè của bạn trên các mạng xã hội bằng các nút bên trái hoặc chỉ cần để lại câu trả lời bên dưới. Cảm ơn.

Leave a Reply

Your email address will not be published. Required fields are marked *