Cách cài đặt BoltWire CMS với Nginx trên Ubuntu 20.04 LTS

theanh

Administrator
Nhân viên
Bolt là một hệ thống quản lý nội dung (CMS) nhẹ được xây dựng trên nền tảng PHP phổ biến. Bolt hoàn hảo cho một doanh nghiệp nhỏ muốn duy trì trang web riêng của mình mà không phải lo lắng về việc phải học HTML và các ngôn ngữ lập trình khác. Bolt có các tính năng nâng cao như đánh dấu wiki mạnh mẽ, thương mại điện tử, trình tạo thư viện ảnh và album, thư viện và trình phát âm thanh, và sổ lưu bút.

Boltwire nổi bật vì hoàn toàn miễn phí cho các cá nhân và nhóm ở mọi quy mô có nhu cầu về CMS. Joe Casabona là người sáng tạo ra Boltwire và anh ấy chia sẻ niềm đam mê của mình bằng cách giúp những người khác tận dụng tối đa dự án nguồn mở của mình. Bolt được sử dụng ở hơn 200 quốc gia để quản lý hơn 500.000 trang web. Các nhà phát triển của Bolt là những người tình nguyện và mong đợi rằng tất cả người dùng đều tham gia vào dự án bằng cách cung cấp phản hồi và đóng góp vào quá trình phát triển của dự án.

Bolt có một số tính năng độc đáo:
  • Tạo trang động: Có thể lắp ráp một trang dựa trên dữ liệu tìm thấy khi lấy trang đó từ cơ sở dữ liệu. Ví dụ, khi người dùng đăng một mục mới trong nhật ký trực tuyến, các mục khác của blog của người đó có thể được thêm vào một cách động mà không cần phải làm mới toàn bộ trang web. Điều này cho phép thời gian tải nhanh hơn, đặc biệt là với số lượng lớn các trang hoặc mục phương tiện cho mỗi danh mục (ví dụ: tất cả ảnh trong thư viện ảnh).
  • Quản lý và quản trị nội dung: Nhiều người dùng có thể quản lý nội dung, để đảm bảo rằng mỗi người dùng chỉ có thể thay đổi một số phần nhất định của các trang. Họ cũng có thể bị hạn chế về những gì họ được phép xem hoặc chỉnh sửa. Ví dụ, hầu hết mọi người không được phép đăng bài viết mới hoặc thêm bình luận một cách tự do; điều này dành riêng cho quản trị viên trang web. Người đọc vẫn có thể xem bất kỳ bài viết nào mà không cần đăng nhập trước trừ khi được quản trị viên chỉ định khác.
  • Dễ sử dụng: Bolt giảm đáng kể lượng công sức cần thiết để tạo trang web so với các CMS khác như Joomla và Drupal. Các trình hướng dẫn tích hợp sẵn trong Bolt tự động hóa phần lớn quy trình cấu hình để bạn không phải lo lắng về cách mọi thứ hoạt động bên trong.
  • Khả năng mở rộng dễ dàng: Vì Bolt là mã nguồn mở nên rất dễ tạo các mô-đun mới để mở rộng hoặc thêm các tính năng vào Bolt. Các chức năng mới thường được tích hợp vào phần mềm cốt lõi, giúp chúng dễ sử dụng hơn. Với khoảng 40 tiện ích mở rộng hiện có trên Modboom, bạn có thể dễ dàng mở rộng bất kỳ phần nào của Bolt mà bạn muốn mà không cần phải đi quá sâu vào lập trình PHP.
  • BoltWire có nhiều ngôn ngữ: tiếng Anh (mặc định), tiếng Đức, tiếng Ý, tiếng Nhật, tiếng Ba Lan, tiếng Bồ Đào Nha và tiếng Tây Ban Nha. Bên cạnh các gói BoltWire tiêu chuẩn cho các ngôn ngữ trên, bản địa hóa đầy đủ cũng có sẵn bằng tiếng Pháp (100%) và tiếng Hà Lan (hơn 50%).
Nhược điểm là có rất ít hỗ trợ ngoài các diễn đàn trợ giúp nếu bạn có bất kỳ câu hỏi nào về cách mọi thứ hoạt động bên trong bằng ngôn ngữ địa phương của mình. Về mặt này, bạn phải tự chịu trách nhiệm để mọi thứ hoạt động như mong muốn. Tuy nhiên, nếu bạn thoải mái sử dụng trình soạn thảo văn bản và có thời gian tự làm Bolt, thì không có gì ngăn cản bạn tạo một trang web đơn giản nhưng chuyên nghiệp chỉ trong vài phút.

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt BoltWire trên máy chủ Ubuntu 20.04.

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

  • Máy chủ mới chạy Ubuntu 20.04.
  • Quyền truy cập root SSH đầy đủ hoặc người dùng có đặc quyền sudo.
  • Tên miền đã được đăng ký và trỏ đến máy chủ của bạn.

Bắt đầu Bắt đầu​

Trước hết, hãy đăng nhập vào Ubuntu của bạn bằng SSH.

ssh root@IP_Address -p Port_number

root là người dùng mặc định trên Ubuntu, hãy thay thế ‘root’ bằng tên người dùng của riêng bạn, nếu bạn sử dụng người dùng khác.

IP_Address là địa chỉ máy chủ của bạn. Bạn có thể kiểm tra điều này bằng cách sử dụng

hostname -I trên dòng lệnh. Port_number phải là 22 đối với SSH.
Mã:
hostname -I
‘-p’ sẽ yêu cầu ssh sử dụng cổng đã chỉ định. Nếu bạn không chỉ định số cổng, 22 sẽ được sử dụng.

Nếu bạn đang ở sau tường lửa, cổng 22 có thể bị chặn. Trong trường hợp đó, hãy đổi Port_number thành một số khác như 2222.

Cập nhật Hệ thống của bạn​

Bạn có thể kiểm tra xem hệ thống của mình đã cài đặt phiên bản Ubuntu phù hợp hay chưa bằng lệnh sau:
Mã:
sudo lsb_release -a
Đầu ra mẫu:



Luôn nên cập nhật hệ thống trước khi cài đặt các gói.
Mã:
sudo apt-get update && apt-get upgrade -y
-y là một lệnh sẽ tự động trả lời 'Có' cho tất cả các câu hỏi trong quá trình cập nhật. apt-get update cập nhật danh sách các gói và apt-get upgrade nâng cấp hệ thống của bạn.

Đầu ra mẫu:



Bản cập nhật có thể mất một khoảng thời gian tùy thuộc vào số lượng gói cần tải xuống và cài đặt. Sau khi bản cập nhật hoàn tất, bạn sẽ được nhắc khởi động lại máy chủ. Chạy lệnh bên dưới để khởi động lại hệ thống sau khi cập nhật:
Mã:
sudo reboot

Cài đặt các gói cần thiết​

Việc cài đặt Bolt yêu cầu một số gói phải được cài đặt trên hệ thống của bạn. Một số gói được cài đặt theo thứ tự cụ thể. Trong trường hợp này, chúng tôi sẽ cài đặt tất cả các gói cần thiết để cài đặt Bolt bằng lệnh bên dưới:
Mã:
sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https
socat dùng để proxy, khiến Bolt có vẻ như đang chạy trên máy chủ web.

apt-transport-https cho phép các hoạt động dòng lệnh như sudo apt update hoạt động với các kết nối https. bash-completion là một chương trình cho phép bash tự động hoàn thành lệnh sau khi nhập một vài ký tự đầu tiên.

curl được sử dụng để tải xuống các gói và wget được sử dụng để tải xuống các tệp như phiên bản Bolt mới nhất từ trang web của nó.

Đầu ra mẫu:


Cài đặt Nginx​

Nginx được sử dụng như một proxy ngược để quản lý các trang web của bạn trong Bolt. Nginx nhẹ, dễ cấu hình và nhanh. Chạy lệnh bên dưới để cài đặt Nginx
Mã:
sudo apt-get install nginx
Nhập 'y' nếu được nhắc, quá trình cài đặt sẽ tự động bắt đầu.

Đầu ra mẫu:



Sau khi cài đặt hoàn tất, hãy khởi động dịch vụ nginx và cho phép dịch vụ này chạy khi khởi động hệ thống
Mã:
sudo systemctl start nginx
Mã:
sudo systemctl enable nginx
Để kiểm tra và xác minh xem Nginx hiện có đang chạy hay không, hãy sử dụng lệnh này trong terminal.
Mã:
sudo systemctl status nginx
Đầu ra mẫu:


Cấu hình Nginx​

BoltWire CMS được cài đặt vào thư mục /var/www/. Để truy cập & kiểm tra BoltWire CMS, chúng ta phải cấu hình khối máy chủ Nginx để định tuyến các yêu cầu đến đường dẫn thư mục webroot /var/www/tự động cho tất cả các yêu cầu nội dung tĩnh cũng như các yêu cầu tệp mô-đun và plugin.

Chạy các lệnh sau để tạo tệp cấu hình mới có tên là bolt.conf
Mã:
sudo nano /etc/nginx/sites-available/bolt.conf
Điền nội dung sau vào tệp cấu hình:
Mã:
server {
 listen 80; 
 listen [::]:80;
 root /var/www/bolt;
 indexindex.php index.html index.htm;
 server_name bolt.example.com;

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

 location ~ [^/]\.php(/|$) {
 try_files/index.php =404; 
 fastcgi_split_path_info ^(.+\.php)(/.+)$; 
 fastcgi_indexindex.php; 
 fastcgi_passunix:/var/run/php/php7.2-fpm.sock; 
 includefastcgi_params; 
 fastcgi_paramPATH_INFO$fastcgi_path_info; 
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
}

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

 location ^~ /bolt/ {
 try_files$uri /index.php?$query_string;
}

}
Khối máy chủ Nginx mà chúng ta vừa tạo sử dụng gốc tài liệu mặc định được đặt thành thư mục /var/www/. Nếu bạn đang chạy BoltWire CMS trong một môi trường máy chủ khác, hãy chỉnh sửa tệp conf và thay thế đường dẫn gốc của tài liệu cho phù hợp.

Chỉ thị server_name cấu hình URL mà máy chủ web Nginx của bạn sẽ lắng nghe. Thay thế bolt.example.com bằng tên miền máy chủ thực tế hoặc địa chỉ IP của bạn.

try_files$uri $uri/ /index.php?$query_string; Chỉ thị này cho phép bạn xử lý trực tiếp các yêu cầu đường dẫn tệp nếu tìm thấy. Ví dụ, nếu người dùng cố gắng truy cập trang chủ của BoltWire CMS từ trình duyệt, /index.php sẽ được sử dụng làm tệp chỉ mục nếu tồn tại, nếu không, nó sẽ quay lại phản hồi 404 Không tìm thấy của PHP-FPM.

Sau khi thực hiện các thay đổi và lưu chúng vào tệp bolt.conf, hãy tải lại Nginx và khởi động lại để cấu hình mới có hiệu lực.
Mã:
sudo systemctl reload nginx
Mã:
sudo systemctl restart nginx
Kiểm tra cấu hình nginx bằng cách chạy các lệnh sau:
Mã:
sudo nginx -t
Đầu ra mẫu:


Cài đặt MySQL​

BoltWire CMS yêu cầu phiên bản tối thiểu là 4.2 của máy chủ MySQL, nhưng BoltWire CMS không hoạt động với 5.x trở lên.

Vì vậy, bạn có một số tùy chọn: Sử dụng máy chủ cơ sở dữ liệu từ xa như Microsoft SQL Server Triển khai MySQL trên tất cả các máy chủ web (không khuyến khích) Nâng cấp phiên bản MySQL của bạn. Các tùy chọn đầu tiên khá đơn giản, nhưng loại nâng cấp thì phức tạp.

Đối với những người sử dụng ngăn xếp LAMP (Linux, Apache, MySQL và PHP), họ không phải cài đặt MySQL riêng vì Ubuntu đã bao gồm máy chủ MySQL trong kho lưu trữ của nó.

Chạy lệnh bên dưới để cài đặt MySQL:
Mã:
sudo apt -y install mysql-server
Đầu ra mẫu:



Sau khi cài đặt hoàn tất, hãy chạy lệnh bên dưới để khởi động MySQL daemon (máy chủ MySQL) cho phiên này và cho phép nó chạy khi khởi động hệ thống:
Mã:
sudo systemctl start mysql
Mã:
sudo systemctl enable mysql

Tạo cơ sở dữ liệu​

Chúng ta sẽ sử dụng dòng lệnh để tạo cơ sở dữ liệu có tên là bolt.

Kết nối với mysql để tạo cơ sở dữ liệu bằng cách chạy lệnh bên dưới:
Mã:
sudo mysql -u root -p
Nhập mật khẩu root cho mysql. Bây giờ bạn đã đăng nhập vào bảng điều khiển mysql. Để tạo cơ sở dữ liệu và người dùng cơ sở dữ liệu, hãy chạy lệnh bên dưới:
Mã:
CREATE DATABASE bolt;
Mã:
CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'mypassword';
Mã:
GRANT ALL ON bolt.* TO 'bolt'@'localhost';
Mã:
FLUSH PRIVILEGES;
Mã:
exit
CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'mypassword' sẽ tạo người dùng 'bolt' có mật khẩu là 'mypassword'. Sử dụng mật khẩu an toàn thay vì từ 'mypassword' ở đây! Quyền xóa sẽ tải lại bảng cấp quyền đã tạo ở trên.

Cài đặt PHP​

BoltWire CMS yêu cầu PHP phiên bản 7 trở lên và các tiêu đề phát triển của nó. Chúng tôi sẽ thêm ppa:eek:ndrej/php PPA với phiên bản PHP cần thiết (7.2), bạn có thể tự thay đổi thành phiên bản PHP cần thiết của mình. Chúng tôi sẽ chạy các lệnh sau để thêm ppa và cập nhật apt-get
Mã:
sudo apt -y install software-properties-common
Mã:
sudo add-apt-repository ppa:ondrej/php
Mã:
sudo apt-get update
Chạy lệnh bên dưới để cài đặt PHP 7.2:
Mã:
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-zip php7.2-pgsql php7.2-sqlite3 php7.2-curl php7.2-gd php7.2-mysql php7.2-intl php7.2-json php7.2-opcache php7.2-xml
php7.2-cli là giao diện dòng lệnh cho PHP7.2 và với php7.2-common sẽ cài đặt php7.2-extensions, mô-đun máy chủ web (PHP) và các tiện ích mở rộng CLI chuẩn. Với php7.2 -fpm sẽ cài đặt FastCGI Process Manager, một cách phổ biến để chạy các ứng dụng PHP từ máy chủ web của bạn. php7.2-mbstring sẽ cài đặt các hàm chuỗi nhiều byte cần thiết cho BoltWire CMS. php7.2-opcache sẽ cài đặt bộ đệm opcode cho PHP7.2, cung cấp hiệu suất tốt hơn và giảm tải cho máy chủ web của bạn bằng cách lưu trữ đệm các tập lệnh đã biên dịch. php7.2-xml sẽ cài đặt tiện ích mở rộng xử lý XML cho PHP7.2, bắt buộc phải sử dụng BoltWire CMS.

Đầu ra mẫu:



Sau khi cài đặt PHP 7.2, hãy chạy các lệnh bên dưới để kiểm tra phiên bản PHP7.2 của bạn:
Mã:
php -v
Đầu ra mẫu:



Tiếp theo, mở tệp cấu hình PHP mặc định cho Nginx bằng trình soạn thảo văn bản nano:
Mã:
sudo nano /etc/php/7.2/fpm/php.ini
Bây giờ chúng ta sẽ thực hiện các thay đổi trên các dòng sau:
Mã:
file_uploads = On
Mã:
allow_url_fopen = On
Mã:
memory_limit = 256M
Mã:
upload_max_filesize = 100M
Mã:
max_execution_time = 360
Mã:
date.timezone = America/St. Louis
  • file_uploads = Bật cho phép tính năng tải tệp lên BoltWire CMS.
  • allow_url_fopen = Bật cho phép URL trực tiếp hoặc chuyển hướng HTTP trên các yêu cầu có tệp đã tải lên từ máy chủ web từ xa.
  • memory_limit = 256M là giới hạn bộ nhớ PHP 7.2 tính bằng MB để đặt cho các quy trình làm việc Nginx, chạy một tập lệnh PHP với mức tiêu thụ bộ nhớ cao có thể gây ra lỗi thời gian chạy php.
  • upload_max_filesize = 100M là kích thước tối đa cho một tệp tải lên duy nhất đến trang web BoltWire CMS, nếu bạn muốn bật tải lên tệp có kích thước không giới hạn, vui lòng thay đổi giá trị này thành 0.
  • max_execution_time = 360 là thời gian thực thi tối đa tính bằng giây để tập lệnh PHP chạy, nếu một tập lệnh vượt quá giá trị này, nó sẽ bị chấm dứt.
  • date.timezone = America/St. Louis, múi giờ của vị trí của bạn để hiển thị giá trị ngày và giờ của khách hàng một cách chính xác trong hệ thống BoltWire CMS.
Khởi động lại php7.2-fpm để áp dụng các thay đổi trên:
Mã:
sudo service php7.2-fpm restart
Điều này là đủ cho PHP7.2 cần thiết và các gói liên quan, chúng ta hãy chuyển sang bước tiếp theo.

Cài đặt Composer​

BoltWire CMS yêu cầu Composer thêm các thư viện bên ngoài cần thiết của họ vào trang web, vì vậy chúng ta cần cài đặt nó trước khi tiếp tục hướng dẫn này. Composer là trình quản lý gói cho PHP quản lý các phụ thuộc của các dự án PHP. Nó tương tự như npm của NodeJS hoặc ruby gems.

Đầu tiên, chúng ta di chuyển đến thư mục gốc và tải xuống trình cài đặt:
Mã:
sudo curl -sS https://getcomposer.org/installer -o composer-setup.php
Lệnh bên dưới sẽ cài đặt Composer:
Mã:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Lệnh trên sẽ tải xuống và cài đặt Composer dưới dạng nhị phân toàn hệ thống trong thư mục /usr/local/bin.

Bạn có thể chọn cấu hình Composer chỉ cho người dùng của mình bằng cách thay thế phần /usr/local/bin của lệnh bằng ~/user_

Sau khi cài đặt xong, bạn có thể chạy lệnh bên dưới để kiểm tra xem cài đặt có thành công không.
Mã:
composer
Đầu ra mẫu:


InstallingBolt​

Bây giờ tất cả các gói cần thiết đã được cài đặt, chúng ta có thể tiếp tục cài đặt Bolt.

Đầu tiên, chúng ta di chuyển vào thư mục /var/www/ và tải xuống phiên bản Bolt CMS mới nhất từ GitHub bằng lệnh bên dưới:
Mã:
cd /var/www/
Mã:
sudo git clone https://github.com/bolt/bolt.git
Đầu ra mẫu:



Sau khi tải xuống, bạn sẽ thấy một thư mục có tên là bolt với một tệp duy nhất có tên là "composer.json", đây là tệp cấu hình composer cho Bolt CMS.

Bây giờ chúng ta chuyển đến thư mục bolt và cài đặt Bolt từ đó:
Mã:
cd bolt
Mã:
sudo composer install
Lệnh này sẽ cài đặt tất cả các tệp nguồn Bolt và các phụ thuộc cần thiết trong /var/www/bolt bằng trình quản lý gói Composer.

Đầu ra mẫu:



Bước tiếp theo là chạy lệnh sau để thiết lập thư mục làm việc của Bolt:
Mã:
sudo chown -R www-data:www-data /var/www/bolt
Mã:
sudo chmod -R 755 /var/www/bolt
Lệnh trên sẽ thay đổi quyền sở hữu các tệp Bolt thành người dùng Nginx www-data, do đó, nó có thể đọc và ghi tệp khi truy cập URL Bolt.

Bước tiếp theo là cấu hình tệp cấu hình bolt:
Mã:
sudo cp app/config/config.yml.dist app/config/config.yml

Truy cập BoltWire CMS​

Bây giờ chúng ta có thể truy cập BoltWire CMS bằng cách sử dụng URL sau từ trình duyệt trên máy tính Linux hoặc Windows:

http://localhost:8000/bolt hoặc http://bolt.example.com/bolt

Bạn sẽ nhận được trang đích BoltWire CMS mặc định như trang bên dưới:



Điền tất cả thông tin bắt buộc vào biểu mẫu này, bạn có thể truy cập bảng điều khiển BoltWire của mình như trang bên dưới:



Bây giờ chúng ta đã cấu hình thành công máy chủ Linux cho Bolt Wire CMS.

Nếu bạn gặp sự cố khi cố gắng truy cập BoltWire CMS mới cài đặt. Sau đây là danh sách các lỗi thường gặp và giải pháp khả thi:
  • "Truy cập bị từ chối - lỗi". Điều này có nghĩa là BoltWire CMS đang chạy nhưng bạn không thể truy cập các trang của nó từ trình duyệt, hãy thử kiểm tra thư mục cấu hình Nginx của bạn.
  • "Không thể tải thư viện động '/var/www/BoltWire/vendor/php72-zip/libphp7. 2.so" hoặc "Lỗi khi thực thi tập lệnh". Điều này có nghĩa là thư mục BoltWire CMS không có đủ quyền cần thiết để thực thi và chạy tệp PHP.
  • "Lỗi khi khởi tạo ... Không có tệp hoặc thư mục nào như vậy". Điều này có nghĩa là BoltWire CMS không được cài đặt đúng cách. Bạn cần kiểm tra xem mình đã làm đúng quy trình cài đặt BoltWire CMS chưa.
  • "Quyền bị từ chối". Điều này có nghĩa là bạn không có quyền truy cập thích hợp vào thư mục /var/www/bolt hoặc /var/www.
  • "Lỗi nghiêm trọng: Không tìm thấy lớp 'PDO' trong...". Điều này có nghĩa là PHP không thể kết nối với cơ sở dữ liệu và bạn có thể cần kiểm tra cấu hình PHP của mình.
  • "Đang tìm kiếm ... " hoặc "Cảnh báo: Đối số không hợp lệ được cung cấp cho foreach()...". Điều này có nghĩa là BoltWire CMS không thể tìm thấy những gì bạn đã cung cấp. Thông thường, điều này là do tên blog và slug hoặc đường dẫn trong cấu hình của bạn không được biết đến.
  • "Không thể tạo thư mục ... Chỉ mục không xác định: dữ liệu đã xem". Điều này có nghĩa là BoltWire CMS không thể tạo thư mục của mình trong máy chủ Nginx của bạn và bạn có thể cần kiểm tra cấu hình PHP.
  • "Lỗi phân tích cú pháp: lỗi cú pháp, '=' không mong muốn trong ... tại ...". Điều này có nghĩa là BoltWire CMS không thể chạy tệp của nó hoặc không thể đọc một trong các tệp của bạn. Điều này có thể xảy ra khi bạn đã sử dụng cú pháp không đúng trong cấu hình của mình.
  • "404 not found nginx/1.14.0 (ubuntu)" Thêm bản ghi 'A' cho bolt.example.com vào máy chủ của bạn sẽ giúp ích.
  • "404 Not Found" hoặc "URL được yêu cầu ... không được tìm thấy trên máy chủ này". Điều này có nghĩa là BoltWire CMS không thể tìm thấy các tệp của nó. Bạn có thể cần kiểm tra cấu hình BoltWire của mình và đảm bảo rằng bạn đã chỉ định đúng đường dẫn trong đó.
BoltWire đã được cài đặt nhưng không có trang nào hoặc trang đăng nhập BoltWire đang hiển thị nếu BoltWire CMS đã được cài đặt, thì Bolt sẽ tìm kiếm mẫu BoltWire mặc định tại thư mục /var/www/bolt/_templates bên trong thư mục cài đặt của Bolt và nếu không tìm thấy bất kỳ tệp nào ở đó, Bolt sẽ sử dụng tệp index.php trong thư mục cài đặt của Bolt làm trang chủ. Nếu cách đó cũng không hiệu quả thì có thể có vấn đề khác với cấu hình PHP hoặc cấu hình Nginx của bạn.

Kết luận​

BoltWire CMS là một phần mềm tuyệt vời để chạy blog hoặc trang web cá nhân. Bạn có thể tìm hiểu thêm về Bolt CMS từ trang web chính thức của BoltWire CMS.

Hy vọng bài viết này sẽ giúp bạn tìm hiểu cách cài đặt BoltWire trên máy chủ Ubuntu 20.04. Nếu bạn thích bài viết này, hãy chia sẻ với bạn bè trên twitter hoặc facebook. Nếu bạn có bất kỳ câu hỏi nào, vui lòng để lại bình luận bên dưới.
 
Back
Bên trên