Bolt làmộtCMStinh vi, nhẹ và đơn giảnđược xây dựng bằng PHP. Nó đượcphát hành theo giấy phép MIT mã nguồn mở và mã nguồn được lưu trữ như một kho lưu trữ công khai trên Github. Bolt là một công cụ Quản lý nội dung, cố gắng đơn giản và dễ hiểu nhất có thể. Nó nhanh chóng thiết lập, dễ cấu hình, sử dụng các mẫu thanh lịch. Bolt được tạo ra bằng các thư viện mã nguồn mở hiện đại và phù hợp nhất để xây dựng các trang web trong HTML5 với mã đánh dấu hiện đại.Trong hướng dẫn này, chúng ta sẽ xem qua cài đặt Bolt CMS trên hệ thống FreeBSD 12 bằng cách sử dụng Nginx làm máy chủ web, MySQL 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.
Thiết lập múi giờ:
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:
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 FreeBSD 12.0:
Cài đặt máy chủ cơ sở dữ liệu MySQL:
Kiểm tra phiên bản MySQL:
Bật và khởi động dịch vụ MySQL:
Chạy tập lệnh
Trả lời từng câu hỏi sau:
Kết nối với shell MySQL với tư cách là người dùng root:
Tạo một cơ sở dữ liệu MySQL rỗng và người dùng forBolt và ghi nhớ thông tin đăng nhập:
Thoát khỏi MySQL:
Thay thế
Kiểm tra phiên bản PHP:
Bật và khởi động dịch vụ PHP-FPM:
Chúng ta có thể chuyển sang bước tiếp theo, đó là lấy chứng chỉ SSL miễn phí từ Let's Encrypt CA.
Bước 3 - Cài đặt máy khách
Bảo mật trang web của bạn bằng HTTPS là không cần thiết, 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. Để có được chứng chỉ TLS 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ỉ TLS từ Let's Encrypt mà không cần bất kỳ sự phụ thuộc nào.
Tải xuống và cài đặtAcme.sh:
Kiểm tra phiên bản Acme.sh:
Lấy chứng chỉ RSA và ECC/ECDSA cho tên miền/tên máy chủ của bạn:
Sau khi chạy các lệnh trên, chứng chỉ và khóa của bạn sẽ nằm trong:
Tải xuống và cài đặt bản phát hành chính thức mới nhất của Nginx từ FreeBSDrepository:
Kiểm tra phiên bản Nginx:
Bật và khởi động Nginx:
Cấu hình Nginx forBolt bằng cách chạy:
Và điền cấu hình sau vào tệp:
LƯU Ý: Để biết cấu hình Nginx hoàn chỉnh và sẵn sàng cho sản xuất cho BoltCMS, hãy xemhttps://docs.bolt.cm/3.6/installation/webserver/nginx.
Chạy
Kiểm tra cấu hình Nginx xem có lỗi cú pháp không:
Tải lại dịch vụ Nginx:
Điều hướng đến
Tải xuống bản phát hành mới nhất của Bolt CMS qua wget và giải nén:
Xóa tệp
Đổi tên thư mục bolt-v3.6.10 thành chỉ bolt:
Điều hướng đến thư mục
Để hoàn tất quá trình cài đặt, bạn sẽ cần đổi tên các tệp sau:
Thay đổi quyền sở hữu thư mục
Điều hướng đến thư mục mà bạn đã tải Bolt lên trong trình duyệt web của bạn và làm theohướng dẫn trên màn hình.
Điền thông tin bắt buộc để tạo người dùng và nhấp vào nút "Tạo người dùng đầu tiên" để tiếp tục. Sau đó, giao diện Bolt CMSadmin sẽ hiển thị:
Cài đặt Bolt CMS hiện đã hoàn tất. Để truy cập Bolt CMS admin, hãy thêm
Yêu cầu
Yêu cầu hệ thống đối với Bolt khá khiêm tốn và có thể chạy trên bất kỳ máy chủ web hiện đại nào:- Phiên bản PHP 5.5.9 trở lên với các phần mở rộng PHP phổ biến sau: pdo, mysqlnd, pgsql, openssl, curl, gd, intl, json, mbstring, opcache, posix, xml, fileinfo, exif, zip.
- Truy cập vào SQLite (đi kèm với PHP), hoặc MySQL hoặc PostgreSQL.
- Apache với
mod_rewrite
được bật (tệp.htaccess
) hoặc Nginx (cấu hình máy chủ ảo được đề cập bên dưới). - Tối thiểu 32MB bộ nhớ được phân bổ cho PHP.
Điều kiện tiên quyết
- Hệ điều hành chạy FreeBSD 12.
- 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 FreeBSD của bạn:
Mã:
uname -ro
# FreeBSD 12.0-RELEASE
Mã:
tzsetup
Mã:
freebsd-update fetch install
pkg update && pkg upgrade -y
Mã:
pkg install -y sudo vim unzip wget bash
Bước 1 - Cài đặt MySQL và tạo cơ sở dữ liệu cho Bolt
Bolt hỗ trợ các cơ sở dữ liệu MySQL, MariaDB,PostgreSQL và SQLite. 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 pkg install -y mysql57-server
Mã:
mysql --version
#mysql Ver 14.14 Distrib 5.7.27, dành cho FreeBSD12.0 (amd64) bằng trình bao bọc EditLine
Mã:
sudo sysrc mysql_enable="yes"
sudo service mysql-server start
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
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]
Mã:
sudo mysql -u root -p
# Nhập mật khẩu
Mã:
CREATE DATABASE dbname;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Mã:
exit
dbname
, username
và password
bằng tên của riêng bạn.Bước 2 - Cài đặt PHP và các tiện ích mở rộng PHP cần thiết
Cài đặt PHP cũng như các tiện ích mở rộng PHP cần thiết:
Mã:
sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache php72-sqlite3 php72-pdo_sqlite php72-intl php72-posix
Mã:
php --version
# PHP 7.2.22 (cli) (xây dựng: 07/09/2019 01:12:40) (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.22, Bản quyền (c) 1999-2018, của Zend Technologies
Mã:
sudo sysrc php_fpm_enable=yes
sudo service php-fpm start
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)
Bảo mật trang web của bạn bằng HTTPS là không cần thiết, 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. Để có được chứng chỉ TLS 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ỉ TLS từ Let's Encrypt mà không cần bất kỳ sự phụ thuộc nào.Tải xuống và cài đặtAcme.sh:
Mã:
sudo pkg install -y acme.sh
Mã:
acme.sh --version
# v2.8.2
Mã:
# RSA
sudo acme.sh --issue--standalone--home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256
- Đố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 3 - Cài đặt NGINX và cấu hình NGINX cho Bolt CMS
Bolt 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 thức mới nhất của Nginx từ FreeBSDrepository:
Mã:
sudo pkg install -y nginx-devel
Mã:
nginx -v
#nginx version: nginx/1.17.1
Mã:
sudo sysrc nginx_enable=yes
sudo service nginx start
Mã:
sudo vim /usr/local/etc/nginx/bolt.conf
Mã:
server {
listen 80;
listen 443 ssl;
tên_máy_chủ example.com;
gốc /usr/local/www/bolt/public;
chỉ mục index.php;
# RSA
chứng_chỉ ... /index.php?$query_string;
}
vị trí ^~ /bolt/ {
try_files $uri /index.php?$query_string;
}
vị trí ~ /index.php/(.*) {
viết lại ^/index.php/(.*) /$1 vĩnh viễn;
}
vị trí ~ /\. { từ chối tất cả; }
vị trí ~ /\.(htaccess|htpasswd)$ { từ chối tất cả; }
vị trí ~ /\.(?:db)$ { từ chối tất cả; }
vị trí ~* /(.*)\.(?:markdown|md|twig|yaml|yml)$ { từ chối tất cả; }
location ~ [^/]\.php(/|$) {
include fastcgi_params;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_param HTTPS $https if_not_empty;
fastcgi_pass 127.0.0.1:9000;
}
}
Chạy
sudo vim /usr/local/etc/nginx/nginx.conf
và thêm dòng bên dưới vào khối http {}
để includeBolt config.
Mã:
include bolt.conf;
Mã:
sudo nginx -t
Mã:
sudo service nginx reload
Bước 5 - Cài đặtBolt CMS
Tạo/usr/local/www
thư mục:
Mã:
sudo mkdir -p /usr/local/www
/usr/local/www
thư mục:
Mã:
cd /usr/local/www
Mã:
sudo wget https://bolt.cm/distribution/bolt-latest.zip && sudo unzip bolt-latest.zip
bolt-latest.zip
đã tải xuống:
Mã:
sudo rm bolt-latest.zip
Mã:
sudo mv bolt-v3.6.10 bolt
/usr/local/www/bolt
:
Mã:
cd /usr/local/www/bolt
Mã:
sudo mv .bolt.yml.dist .bolt.yml
sudo mv composer.json.dist composer.json
sudo mv composer.lock.dist composer.lock
sudo mv src/Site/CustomisationExtension.php.dist src/Site/CustomisationExtension.php
/usr/local/www/bolt
thành www
user:
Mã:
sudo chown -R www:www /usr/local/www/bolt
Bước 6 - Hoàn tất cài đặt và thiết lập Bolt CMS
Sau khi mở trang web của bạn trong trình duyệt web, bạn sẽ được chuyển hướng đến trang sau:Điền thông tin bắt buộc để tạo người dùng và nhấp vào nút "Tạo người dùng đầu tiên" để tiếp tục. Sau đó, giao diện Bolt CMSadmin sẽ hiển thị:
Cài đặt Bolt CMS hiện đã hoàn tất. Để truy cập Bolt CMS admin, hãy thêm
/bolt
vào IP hoặc tên miền trang web của bạn.