Cách cài đặt WonderCMS trên Debian 12

theanh

Administrator
Nhân viên
WonderCMS là một hệ thống quản lý nội dung (CMS) mã nguồn mở, nhẹ được thiết kế để đơn giản và dễ sử dụng. Không giống như nhiều nền tảng CMS khác yêu cầu thiết lập mở rộng hoặc tài nguyên nặng, WonderCMS hoạt động trên một cơ sở dữ liệu tệp phẳng duy nhất, nghĩa là nó không cần một hệ thống cơ sở dữ liệu truyền thống như MySQL. Điều này làm cho nó cực kỳ dễ cài đặt và quản lý, thường không yêu cầu gì hơn ngoài việc tải các tệp CMS lên máy chủ. Mặc dù có kích thước nhỏ, WonderCMS vẫn cung cấp các tính năng thiết yếu như chỉnh sửa nội dung, tùy chọn SEO, tùy chỉnh chủ đề và hỗ trợ plugin, khiến nó trở thành lựa chọn khả thi cho những người dùng muốn có giải pháp tối giản, đơn giản để xây dựng và quản lý trang web.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt WonderCMS trên máy chủ Debian 12 với máy chủ web Apache và PHP 8.x.

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

Đảm bảo bạn có những điều sau trước khi bắt đầu:
  • Máy chủ Debian 12.
  • Người dùng không phải root có quyền quản trị viên.
  • Tên miền trỏ đến IP máy chủ địa chỉ.

Cài đặt Dependencies​

WonderCMS là một hệ thống quản lý nội dung mã nguồn mở được viết bằng PHP. Đây là một CMS phẳng, nghĩa là không yêu cầu cơ sở dữ liệu như MySQL/MariaDB để cài đặt. Nó sử dụng các tệp văn bản làm cơ sở dữ liệu.

Trong hướng dẫn này, bạn sẽ cài đặt WonderCMS với máy chủ web Apache và PHP 8.2.

Trước khi cài đặt các gói, hãy làm mới và cập nhật kho lưu trữ Debian bằng lệnh bên dưới.
Mã:
sudo apt update
Sau khi cập nhật, hãy cài đặt các dependency cho WonderCMS bằng cách thực thi lệnh bên dưới. WonderCMS là một CMS phẳng, không yêu cầu cơ sở dữ liệu. Vì vậy, bạn sẽ chỉ cài đặt máy chủ web Apache và các gói PHP.
Mã:
sudo apt install apache2 php php-common php-mbstring php-curl php-zip unzip
Nhập y để xác nhận cài đặt.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22331%22%3E%3C/svg%3E


Sau khi cài đặt hoàn tất, hãy xác minh dịch vụ Apache bằng lệnh bên dưới. Apache phải chạy và được bật theo mặc định.
Mã:
sudo systemctl is-enabled apache2
sudo systemctl status apache2
Dưới đây, bạn có thể thấy dịch vụ Apache được bật và đang chạy.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22272%22%3E%3C/svg%3E


Cuối cùng, hãy xác minh phiên bản PHP và bật tiện ích mở rộng bằng lệnh sau lệnh.
Mã:
php -m
php -v
Trong kết quả đầu ra bên dưới, bạn có thể thấy PHP 8.2 đã được cài đặt.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22603%22%20height=%22322%22%3E%3C/svg%3E

Cấu hình PHP​

Sau khi cài đặt các phần phụ thuộc, bạn cần cấu hình PHP cho WonderCMS. Bạn sẽ cần phải sửa đổi cấu hình php.ini cho máy chủ web Apache và thay đổi một số thiết lập mặc định, chẳng hạn như múi giờ, giới hạn bộ nhớ, thời gian thực hiện và kích thước tệp tải lên tối đa.

Mở cấu hình php.ini cho máy chủ web Apache bằng lệnh nano editor sau.
Mã:
sudo nano /etc/php/8.2/apache2/php.ini
Thay đổi cấu hình PHP mặc định như sau - Đảm bảo điều chỉnh múi giờ và memory_limit với máy chủ hiện tại của bạn môi trường.
Mã:
date.timezone = "Europe/Amsterdam"
memory_limit = 512M

upload_max_filesize = 128MB
post_max_size = 128MB

max_execution_time = 300
max_input_vars = 5000
Lưu và thoát tệp khi bạn hoàn tất.

Bây giờ hãy khởi động lại dịch vụ Apache để áp dụng sửa đổi của bạn trên PHP.
Mã:
sudo systemctl restart apache2

Cấu hình Tường lửa​

Trong hướng dẫn này, bạn sẽ chạy WonderCMS với tường lửa được bật. Trong ví dụ này, bạn sẽ sử dụng UFW. Bây giờ bạn cần cài đặt UFW và mở cổng cho các dịch vụ SSH, HTTP và HTTPS.

Cài đặt UFW vào máy chủ Debian của bạn bằng lệnh sau. Nhập y để xác nhận và tiếp tục.
Mã:
sudo apt install ufw

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22658%22%20height=%22325%22%3E%3C/svg%3E


Sau khi cài đặt hoàn tất, hãy bật cấu hình OpenSSH để mở cổng 22 và cấu hình "WWW Full" để mở cả HTTP và HTTPS ports.
Mã:
sudo ufw allow OpenSSH
sudo ufw allow "WWW Full"
Bây giờ hãy chạy lệnh sau để bắt đầu và bật UFW. Gõ y để xác nhận, sau đó UFW sẽ chạy và bật.
Mã:
sudo ufw enable

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22739%22%20height=%22219%22%3E%3C/svg%3E


Cuối cùng, hãy xác minh trạng thái UFW bằng lệnh bên dưới. Cả hai cấu hình OpenSSH và "WWW Full" đều được bật trên UFW.
Mã:
sudo ufw status

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22501%22%20height=%22214%22%3E%3C/svg%3E

Tải xuống mã nguồn WonderCMS​

Trong phần này, bạn sẽ tải xuống mã nguồn WonderCMS và cấu hình thư mục gốc tài liệu với quyền và quyền sở hữu thích hợp. Trước khi bắt đầu, hãy đảm bảo truy cập trang WonderCMS GitHub và lấy liên kết tải xuống mới nhất.

Truy cập thư mục /var/www và tải xuống mã nguồn WonderCMS bằng lệnh wget bên dưới.
Mã:
cd /var/www/
wget https://github.com/WonderCMS/wondercms/releases/download/3.4.3/wondercms-343.zip
Sau khi tải xuống, hãy giải nén mã nguồn WonderCMS vào thư mục /var/www/wondercms bằng lệnh unzip lệnh.
Mã:
unzip wondercms-343.zip -d /var/www/wondercms
Cuối cùng, hãy thay đổi quyền sở hữu thư mục /var/www/wondercms thành người dùng www-data. Với điều này, bạn cho phép Apache đọc, ghi và thực thi vào thư mục gốc tài liệu WonderCMS.
Mã:
sudo chown -R www-data:www-data /var/www/wondercms
sudo chmod -R 755 /var/www/wondercms

Cấu hình Apache Virtual Host​

Trong ví dụ này, bạn sẽ chạy WonderCMS với Apache, vì vậy bạn cần tạo cấu hình máy chủ ảo cho điều đó. Đảm bảo tên miền của bạn trỏ đến địa chỉ IP máy chủ Debian của bạn.

Đầu tiên, hãy sử dụng lệnh bên dưới để bật mô-đun ghi lại trên Apache. WonderCMS yêu cầu mod_rewrite phải được bật.
Mã:
sudo a2enmod rewrite

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22503%22%20height=%22123%22%3E%3C/svg%3E


Sau khi bật, hãy tạo cấu hình máy chủ ảo mới /etc/apache2/sites-available/wondercms.conf bằng trình chỉnh sửa nano lệnh.
Mã:
sudo nano /etc/apache2/sites-available/wondercms.conf
Chèn cấu hình sau. Đảm bảo thay đổi tên miền, đường dẫn của thư mục gốc tài liệu và tệp nhật ký bằng thông tin của bạn.
Mã:
ServerName cms.howtoforge.local
DirectoryIndex index.php
DocumentRoot /var/www/wondercms
Redirect /wondercms/loginURL /loginURL

ErrorLog /var/log/apache2/cms.howtoforge.local-error.log
CustomLog /var/log/apache2/cms.howtoforge.local-access.log combined


Options FollowSymLinks
AllowOverride All
Require all granted
Lưu và thoát tệp khi bạn hoàn tất.

Tiếp theo, thực hiện lệnh sau để bật tệp máy chủ ảo wondercms.conf. Sau đó, hãy xác minh Apache và đảm bảo bạn có cú pháp phù hợp.
Mã:
sudo a2ensite wondercms.conf
sudo apachectl configtest
Bạn sẽ nhận được đầu ra Syntax OK nếu bạn có cú pháp Apache phù hợp.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22669%22%20height=%22269%22%3E%3C/svg%3E


Cuối cùng, hãy chạy lệnh bên dưới để khởi động lại dịch vụ Apache và áp dụng các thay đổi của bạn. Với điều này, cài đặt WonderCMS của bạn sẽ sẵn sàng.
Mã:
sudo systemctl restart apache2

Bảo mật WonderCMS bằng Letsencrypt​

Sau khi cấu hình máy chủ ảo Apache, hãy bảo mật cài đặt WonderCMS của bạn bằng HTTPS. Trong trường hợp này, bạn sẽ sử dụng Certbot và Letsencrypt.

Bạn có thể tạo chứng chỉ tự ký cho tên miền cục bộ hoặc mạng nội bộ để bảo mật cài đặt WonderCMS của mình.

Cài đặt Certbot và plugin Certbot Apache bằng lệnh bên dưới. Nhập y để xác nhận cài đặt.
Mã:
sudo apt install certbot python3-certbot-apache
Sau khi cài đặt hoàn tất, hãy tạo chứng chỉ SSL cho tên miền WonderCMS của bạn. Ngoài ra, hãy đảm bảo thay đổi tên miền và địa chỉ email để khớp với thông tin của bạn.
Mã:
sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-oscp --email [emailprotected] -d cms.howtoforge.local
Sau khi quá trình hoàn tất, chứng chỉ của bạn sẽ có trong thư mục /etc/letsencrypt/live/howtoforge.local. Cài đặt WonderCMS của bạn sẽ tự động được bảo mật bằng HTTPS.

Truy cập cài đặt WonderCMS​

Mở trình duyệt web và truy cập tên miền WonderCMS của bạn, chẳng hạn như https://howtoforge.local/. Trên trang chủ WonderCMS, bạn sẽ thấy mật khẩu đã tạo. Sao chép mật khẩu và lưu vào nơi bí mật.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22367%22%3E%3C/svg%3E

Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công WonderCMS trên máy chủ Debian 12, cùng với máy chủ web Apache và PHP 8.2. Bạn cũng đã bảo mật WonderCMS bằng chứng chỉ UFW và SSL từ Letsencrypt.
 
Back
Bên trên