Cách cài đặt October CMS với Nginx trên Fedora 29

theanh

Administrator
Nhân viên
October CMS là nền tảng CMS tự lưu trữ, mã nguồn mở, miễn phí dựa trên Laravel PHP Framework. Mã nguồn October CMS được lưu trữ trênGithub. Hàng nghìn studio kỹ thuật số và người làm việc tự do trên khắp thế giới yêu thích October vì tính đơn giản, linh hoạt và thiết kế hiện đại của nó.Trong hướng dẫn này, chúng ta sẽ tìm hiểu về cài đặt October CMS trên hệ thống Fedora 29 bằng cách sử dụng Nginx làm máy chủ web, MariaDB làm máy chủ cơ sở dữ liệu và tùy chọn bạn có thể bảo mật lớp truyền tải bằng cách sử dụng máy khách acme.sh và cơ quan cấp chứng chỉ Let's Encrypt để thêm hỗ trợ SSL.

Yêu cầu​

Trước khi tiếp tục, bạn nên kiểm tra xem máy chủ của mình có đáp ứng các yêu cầu hệ thống tối thiểu hay không. October CMS có các yêu cầu máy chủ sau để lưu trữ web:
  • Phiên bản PHP 7.0 trở lên
  • Phần mở rộng PHP PDO
  • Phần mở rộng PHP cURL
  • Phần mở rộng PHP OpenSSL
  • Thư viện PHP Mbstring
  • Thư viện PHP Zip
  • Thư viện PHP GD
  • Phần mở rộng PHP XML
  • Phần mở rộng PHP JSON
  • Apache với mod_rewritehoặc Nginx

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

  • Hệ thống chạy Fedora 29.
  • Người dùng không phải root có quyền sudo.

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

Kiểm tra hệ thống Fedora của bạn phiên bản:
Mã:
cat /etc/fedora-release
# Fedora phát hành 29 (Hai mươi chín)
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 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 và bản sửa lỗi bảo mật mới nhất cho các gói phần mềm mặc định của hệ điều hành:
Mã:
sudo dnf upgrade -y
Cài đặt một số gói thiết yếu cần thiết cho việc quản trị cơ bản hệ điều hành Fedora:
Mã:
sudo dnf install -y vim wget curl git socat unzip bash-completion

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

Nền tảng CMS tháng 10 yêu cầu PHP phiên bản 7.0 trở lên.

Cài đặt PHP cũng như các tiện ích mở rộng PHP cần thiết:
Mã:
sudo dnf install -y php-cli php-fpm php-pdo php-common php-mysqlnd php-curl php-json php-zip php-gd php-xml php-mbstring
Kiểm tra PHP version:
Mã:
php --version

#PHP 7.2.15 (cli) (xây dựng: 5 tháng 2 năm 2019 15:43:35) (NTS)
# Bản quyền (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Bản quyền (c) 1998-2018 Zend Technologies # với Zend OPcache v7.2.9, Bản quyền (c) 1999-2018, của Zend Technologies
Khởi động và kích hoạt dịch vụ PHP-FPM:
Mã:
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
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 MariaDB và tạo cơ sở dữ liệu cho tháng 10​

Cài đặt máy chủ cơ sở dữ liệu MariaDB:
Mã:
sudo dnf install -y mariadb-server
Kiểm tra phiên bản MariaDB:
Mã:
mysql --version
# mysql Ver 15.1 Distrib 10.3.12-MariaDB, dành cho Linux (x86_64) bằng readline 5.1
Khởi động và bật dịch vụ MariaDB:
Mã:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Chạy tập lệnh mysql_secure installation để cải thiện bảo mật MariaDB và đặt mật khẩu cho người dùng root MariaDB:
Mã:
mysql_secure_installation
Đăng nhập vào MariaDB với tư cách là người dùng root:
Mã:
mysql -u root -p
# Nhập mật khẩu
Tạo cơ sở dữ liệu MariaDB và người dùng mà bạn sẽ sử dụng để cài đặt October và ghi nhớ thông tin đăng nhập:
Mã:
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Thoát khỏi shell MariaDB:
Mã:
quit

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ó được chứng chỉ SSL từ Let's Encrypt, chúng tôi 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 --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ỉ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​

Cài đặt máy chủ web NGINX:
Mã:
sudo dnf install -y nginx
Kiểm tra phiên bản NGINX:
Mã:
nginx -v
# phiên bản nginx: nginx/1.14.1
Khởi động và kích hoạt dịch vụNGINX:
Mã:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Chạy sudo vim /etc/nginx/conf.d/october.conf và điền cấu hình sau vào tệp:
Mã:
server {
 listen [::]:443 ssl http2;
 listen 443 ssl http2; listen [::]:80; listen 80; server_name example.com; index index.php index.html; gốc /var/www/tháng mười;
 chứng chỉ ssl /etc/letsencrypt/example.com/fullchain.cer;
 khóa chứng chỉ ssl /etc/letsencrypt/example.com/example.com.key;
 chứng chỉ ssl /etc/letsencrypt/example.com_ecc/fullchain.cer;
 khóa chứng chỉ ssl /etc/letsencrypt/example.com_ecc/example.com.key;
 vị trí / { try_files $uri /index.php$is_args$args; } vị trí ~ \.php$ { bao gồm default.d/php.conf; bao gồm fastcgi_params; fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_param TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_TỆP_KẾ_ĐỊNH_CẦN ... } viết lại ^themes/.*/(layouts|pages|partials)/.*.htm /index.php break; viết lại ^bootstrap/.* /index.php break; viết lại ^config/.* /index.php break; viết lại ^vendor/.* /index.php break; viết lại ^storage/cms/.* /index.php break; viết lại ^storage/logs/.* /index.php break; viết lại ^storage/framework/.* /index.php break; viết lại ^storage/temp/protected/.* /index.php break; viết lại ^storage/app/uploads/protected/.* /index.php break;}
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 - Tải xuống và cài đặt nền tảng October CMS​

Tạo thư mục gốc của tài liệu:
Mã:
sudo mkdir -p /var/www/october
Thay đổi quyền sở hữu thư mục /var/www/october thành johndoe:
Mã:
sudo chown -R [your_user]:[your_user] /var/www/october
Điều hướng đến thư mục gốc của tài liệu:
Mã:
cd /var/www/october
Tải xuống trình cài đặt October CMS:
Mã:
wget http://octobercms.com/download -O october.zip
Giải nén trình cài đặt October CMS:
Mã:
unzip october.zip
rm october.zip
mv install-master/* .
Thay đổi quyền sở hữu thư mục /var/www/october thành nginx:
Mã:
sudo chown -R nginx:nginx /var/www/october
Chạy sudo vim /etc/php-fpm.d/www.conf và đặt người dùng và nhóm thành nginx. Ban đầu, chúng sẽ được đặt thành apache:
Mã:
sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx
Khởi động lại dịch vụ PHP-FPM:
Mã:
sudo systemctl restart php-fpm.service
Điều hướng đến tập lệnh install.php trong trình duyệt web của bạn, như example.com/install.php và làm theo hướng dẫn cài đặt.

Bước 6 - Hoàn tất thiết lập tháng 10​

Đảm bảo Kiểm tra hệ thống của bạn ổn và tiếp tục bằng cách nhấn nút "Đồng ý &Tiếp tục".



Cấu hình cài đặt người dùng quản trị và cơ sở dữ liệu của bạn.





Bạn cũng có thể cấu hình một số cài đặt nâng cao hoặc có thể để nguyên các giá trị mặc định.



Và cuối cùng khi mọi thứ đã được cấu hình, hãy nhấn nút màu xanh lam "Tiếp tục".

Tiếp theo, bạn sẽ được hỏi, "Bạn muốn thiết lập trang web của mình như thế nào?". Bạn sẽ có 3 tùy chọn: Bắt đầu từ đầu, Bắt đầu từ một chủ đề, Sử dụng ID dự án. Chọn tùy chọn bạn muốn.



Để truy cập vào khu vực quản trị của nền tảng October CMS, chỉ cần thêm /backend vào URL/IP của bạn.

Sau khi cài đặt, vì lý do bảo mật, bạn nên xóa các tệp cài đặt, tập lệnh install.php và thư mục install_files:
Mã:
sudo rm /var/www/october/install.php && sudo rm -rf /var/www/october/install_files

Liên kết​

 
Back
Bên trên