Cách cài đặt Neos CMS trên Debian 11

theanh

Administrator
Nhân viên
Neos là một hệ thống quản lý nội dung mã nguồn mở và miễn phí với khả năng chỉnh sửa trực quan, quốc tế hóa hoàn toàn, tính linh hoạt tối đa và dễ dàng tích hợp với các hệ thống của bên thứ 3.

Neos là một hệ thống quản lý nội dung doanh nghiệp tích hợp với mô hình hóa nội dung tùy chỉnh, cung cấp một cách hiệu quả để chỉnh sửa và quản lý nội dung, tối ưu hóa SEO như chuyển hướng tự động và siêu dữ liệu SEO, cũng như các vai trò mạnh mẽ và quản lý người dùng.

Trong hướng dẫn này, chúng ta sẽ khám phá cách cài đặt phiên bản Neos CMS mới nhất trên máy chủ Debian 11. Đối với ví dụ này, chúng ta sẽ thiết lập Neos CMS với máy chủ cơ sở dữ liệu MariaDB, PHP 8.1 và máy chủ web Apache2.

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

Để làm theo hướng dẫn này, bạn sẽ cần một máy chủ Debian 11 với người dùng không phải root và các đặc quyền sudo/administrator, và tường lửa UFW được bật. Ngoài ra, bạn sẽ cần một tên miền được trỏ đến địa chỉ IP máy chủ Debian của bạn, đặc biệt là nếu bạn đang cài đặt Neos CMS cho mục đích sản xuất.

Cài đặt Máy chủ Web Apache2​

Neos CMS có thể chạy trên nhiều máy chủ web và đối với bản demo này, bạn sẽ sử dụng máy chủ web Apache2.

Trước khi bắt đầu cài đặt các gói, hãy chạy lệnh apt sau để cập nhật và làm mới kho lưu trữ Debian của bạn.
Mã:
sudo apt update
Sau đó, cài đặt máy chủ web Apache2 bằng lệnh apt bên dưới. Bạn sẽ được yêu cầu xác nhận cài đặt. Nhấn y và ENTER để tiếp tục cài đặt.
Mã:
sudo apt install apache2


Sau khi cài đặt Apache2 hoàn tất, hãy kiểm tra và xác minh dịch vụ 'apache2' thông qua lệnh systemcl bên dưới.
Mã:
sudo systemctl is-enabled apache2
sudo systemctl status apache2
Bạn sẽ thấy đầu ra của 'apache2' được bật và sẽ tự động chạy khi khởi động. Và trạng thái của dịch vụ 'apache2' đang chạy.



Cuối cùng, hãy mở các cổng HTTP và HTTPS trên máy chủ Debian và cho phép lưu lượng truy cập vào đó thông qua lệnh ufw bên dưới. Hồ sơ ứng dụng ufw "WWW Full" sẽ cho phép truy cập vào cả cổng HTTP và HTTPS.
Mã:
sudo ufw allow "WWW Full"
sudo ufw status
Bạn sẽ thấy đầu ra của trạng thái hiện tại của tường lửa UFW đang hoạt động và danh sách các cổng và hồ sơ ứng dụng đã bật.


Cài đặt Máy chủ cơ sở dữ liệu MariaDB​

Neos CMS hỗ trợ hai cơ sở dữ liệu, MariaDB và PostgreSQL. Trong ví dụ này, bạn sẽ chạy Neos CMS với máy chủ cơ sở dữ liệu MariaDB. Vào thời điểm viết bài này, Neos CMS hiện tại yêu cầu ít nhất MariaDB 10.2.2.

Chạy lệnh apt sau để cài đặt MariaDB trên máy chủ Debian của bạn. Phiên bản MariaDB mặc định trên kho lưu trữ Debian là MariaDB 10.5, tương thích với cài đặt Neos CMS.
Mã:
sudo apt install mariadb-server
Khi được nhắc xác nhận quy trình, hãy nhập y và ENTER để tiếp tục cài đặt.



Sau khi MariaDB được cài đặt, hãy kiểm tra dịch vụ MariaDB và xác minh dịch vụ đang chạy thông qua lệnh systemctl như bên dưới.
Mã:
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
Bạn sẽ thấy đầu ra của dịch vụ MariaDB được bật, nghĩa là dịch vụ sẽ tự động chạy khi khởi động hệ thống. Và trạng thái hiện tại của dịch vụ MariaDB đang chạy.



Cuối cùng, bạn sẽ cần bảo mật cài đặt máy chủ MariaDB của mình. Để làm điều đó, bạn có thể sử dụng tập lệnh 'mysql_secure_installation' được bao gồm theo mặc định trong gói MariaDB.

Chạy lệnh sau 'mysql_secure_installation'.
Mã:
sudo mysql_secure_installation
Bạn sẽ được hướng dẫn từng bước để bảo mật cài đặt máy chủ MariaDB của mình. Quy trình này bao gồm cấu hình mật khẩu gốc MariaDB. Vì vậy, hãy đảm bảo sử dụng mật khẩu mạnh cho cài đặt máy chủ MariaDB của bạn.

Ở các lời nhắc tiếp theo, bạn sẽ được hỏi về cấu hình như xóa người dùng ẩn danh mặc định, không cho phép đăng nhập từ xa đối với người dùng gốc, xóa kiểm tra cơ sở dữ liệu mặc định và tải lại các đặc quyền của bảng. Nhập Y cho tất cả các lời nhắc này và nhấn ENTER để tiếp tục.

Thiết lập Cơ sở dữ liệu và Người dùng MariaDB​

Sau khi bạn đã cài đặt và bảo mật máy chủ MariaDB, bạn sẽ tạo một cơ sở dữ liệu và người dùng MariaDB mới để cài đặt Neos CMS. Để thực hiện việc đó, bạn phải đăng nhập vào shell MariaDB.

Chạy lệnh mysql bên dưới để đăng nhập vào shell MariaDB thông qua người dùng root mặc định. Khi được nhắc nhập mật khẩu, hãy nhập mật khẩu root MariaDB của bạn.
Mã:
sudo mysql -u root -p
Bây giờ, hãy chạy các truy vấn sau để tạo cơ sở dữ liệu và người dùng mới cho Neos CMS. Trong các truy vấn sau, bạn sẽ tạo cơ sở dữ liệu neosdb, người dùng MariaDB neos@localhost.

Hãy đảm bảo thay thế mật khẩu cho người dùng neos@localhost bằng mật khẩu lưu trữ.
Mã:
CREATE DATABASE neosdb;
CREATE USER neos@localhost;
GRANT ALL PRIVILEGES ON neosdb.* TO neos@localhost IDENTIFIED BY 'Password';
FLUSH PRIVILEGES;


Sau đó, chạy truy vấn sau để xác minh các đặc quyền cho người dùng neos@localhost.
Mã:
SHOW GRANTS FOR neos@localhost;
Nếu cơ sở dữ liệu và người dùng của bạn được cấu hình đúng, bạn sẽ thấy đầu ra của người dùng neos@localhost có đặc quyền đối với cơ sở dữ liệu neosdb.



Cuối cùng, nhập truy vấn sau để ghi nhật ký thoát khỏi shell MariaDB.
Mã:
thoát

Cài đặt các gói PHP 8.1​

Bây giờ bạn sẽ cài đặt các gói PHP vào máy chủ Debian của mình. Phiên bản mới nhất của Neos CMS yêu cầu ít nhất là PHP 7.3 và đối với ví dụ này, bạn sẽ cài đặt PHP 8.1 từ kho lưu trữ của bên thứ ba.

Trong bảng sau, bạn có thể thấy phiên bản mới nhất của Neos CMS v8 yêu cầu PHP 8.0 hoặc 8.1.
Mã:
Phiên bản Neos Phiên bản Flow Phiên bản PHP tương thích
-------------------------------------------------------
4.3 5.3 7.1 - 7.4*
5.x 6.x 7.2 - 7.4
7.x 7.x 7.3 - 7.4 / 8.0 - 8.1
8.x 8.x 8.0 - 8.1
Trước khi cài đặt PHP, hãy chạy lệnh apt sau để cài đặt một số gói cơ bản để quản lý kho lưu trữ của bên thứ ba. Nhập Y khi được nhắc để xác nhận cài đặt và nhấn ENTER để tiếp tục.
Mã:
sudo apt install ca-certificates apt-transport-https software-properties-common wget curl lsb-release
Bây giờ, hãy chạy lệnh sau để thêm kho lưu trữ PHP 8.x vào máy chủ Debian của bạn. Kho lưu trữ này cung cấp nhiều phiên bản gói PHP cho các hệ thống Debian.
Mã:
curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x
Trong quá trình này, bạn sẽ thấy đầu ra như sau:



Tiếp theo, cài đặt các gói PHP 8.1 bằng lệnh apt sau. Các lệnh này sẽ cài đặt một số tiện ích mở rộng PHP và các gói bổ sung như ImageMagick cho quy trình xử lý hình ảnh sẽ được Neos CMS sử dụng.
Mã:
sudo apt install php8.1 php8.1-cli php8.1-common php8.1-imap php8.1-redis php8.1-snmp php8.1-xml php8.1-zip php8.1-imagick php8.1-mbstring php8.1-curl libapache2-mod-php php8.1-mysql imagemagick
Nhập Y khi được yêu cầu để xác nhận cài đặt và nhấn ENTER để tiếp tục.



Sau khi cài đặt PHP hoàn tất, hãy mở tệp '/etc/php/8.1/apache2/php.ini' bằng trình soạn thảo nano.
Mã:
sudo nano /etc/php/8.1/apache2/php.ini
Thay đổi cấu hình mặc định thành bên dưới.
Mã:
date.timezone = Europe/Stockholm
Lưu tệp và thoát khỏi trình chỉnh sửa khi bạn hoàn tất.

Cuối cùng, hãy chạy lệnh sau để khởi động lại dịch vụ Apache2 và áp dụng các thay đổi mới cho cấu hình PHP.
Mã:
sudo systemctl restart apache2

Cài đặt Composer​

Composer là công cụ quản lý gói cho các gói PHP. Bạn sẽ cài đặt Composer trên máy chủ Debian của mình, máy chủ này sẽ được sử dụng để cài đặt các phụ thuộc PHP cho Neos CMS.

Chạy lệnh sau để cài đặt Composer trên hệ thống Debian. Lệnh này sẽ tải xuống tập lệnh cài đặt Composer, sau đó chạy tập lệnh đó. Thư mục cài đặt đích cho Composer là /usr/bin với tên tệp là composer.
Mã:
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer


Bây giờ, hãy xác minh cài đặt Composer bằng lệnh sau.
Mã:
sudo -u www-data composer -v
Bạn sẽ thấy đầu ra của phiên bản Composer được cài đặt trên hệ thống Debian của mình.


Cài đặt Neos Base Distribution​

Lúc này, bạn đã hoàn tất cài đặt các gói phụ thuộc cho Neos CMS, bao gồm máy chủ web Apache2, máy chủ cơ sở dữ liệu MariaDB, PHP 8.1 và PHP Composer.

Bây giờ, bạn sẽ tải xuống mã nguồn Neos CMS và cài đặt các gói phụ thuộc PHP thông qua lệnh Composer.

Chạy lệnh git sau để tải xuống mã nguồn Neos CMS vào thư mục /var/www/neos.
Mã:
git clone https://github.com/neos/neos-base-distribution.git /var/www/neos
Tiếp theo, di chuyển đến thư mục /var/www/neos và chạy lệnh composer để cài đặt các phụ thuộc PHP cho Neos CMS.
Mã:
cd /var/www/neos
composer install
Sau khi cài đặt các phụ thuộc PHP hoàn tất, hãy chạy lệnh sau để thay đổi quyền sở hữu và quyền của thư mục /var/www/neos thành người dùng www-data.
Mã:
sudo ./flow core:setfilepermissions www-data www-data
Sau khi mã nguồn Neos CMS và các phụ thuộc PHP được cài đặt, bạn đã sẵn sàng để chuyển sang tạo cấu hình máy chủ ảo Apache2 cho cài đặt của mình.

Thiết lập Máy chủ ảo Apache2​

Nếu bạn đang chạy Neos CMS trong môi trường sản xuất, hãy đảm bảo tên miền của bạn được trỏ đến địa chỉ IP máy chủ Debian của bạn. Ngoài ra, hãy đảm bảo bạn đã tạo chứng chỉ SSL cho cài đặt tên miền của mình.

Trước khi tạo cấu hình máy chủ ảo Apache, hãy chạy lệnh sau để kích hoạt các mô-đun mod_ssl và mod_rewrite của Apache2.
Mã:
sudo a2enmod ssl rewrite
Bây giờ, hãy tạo tệp cấu hình máy chủ ảo mới '/etc/apache2/sites-available/neos.conf' bằng trình chỉnh sửa nano sau.
Mã:
sudo nano /etc/apache2/sites-available/neos.conf
Thay đổi tên miền bằng tên miền của bạn và thay đổi đường dẫn của chứng chỉ SSL bằng đường dẫn của bạn. Sau đó, dán cấu hình vào tệp.
Mã:
 ServerName howtoforge.local
 ServerAdmin [emailprotected]

 # Chuyển hướng yêu cầu đến SSL
 Chuyển hướng vĩnh viễn "/" "https://howtoforge.local/"

 ErrorLog ${APACHE_LOG_DIR}/howtoforge.local.error.log
 CustomLog ${APACHE_LOG_DIR}/howtoforge.local.access.log combined





 

 ServerName howtoforge.local
 ServerAdmin [emailprotected]

 #SetEnv FLOW_CONTEXT Production
 DocumentRoot /var/www/neos/Web

 # Thêm bảo mật
 php_flag register_globals tắt

 ErrorLog ${APACHE_LOG_DIR}/howtoforge.local.error.log
 CustomLog ${APACHE_LOG_DIR}/howtoforge.local.access.log kết hợp

 SSLEngine bật
 SSLCertificateFile /etc/letsencrypt/live/howtoforge.local/fullchain.pem
 SSLCertificateKeyFile /etc/letsencrypt/live/howtoforge.local/privkey.pem

 
 AllowOverride All
 

 
 RewriteEngine on
 RewriteBase /
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*) index.php [PT,L]
Lưu tệp và thoát khỏi trình chỉnh sửa khi bạn hoàn tất.

Tiếp theo, kích hoạt cấu hình máy chủ ảo 'neos.conf' bằng lệnh sau. Sau đó, hãy xác minh các tệp cấu hình Apache2.
Mã:
sudo a2ensite neos.conf
sudo apachectl configtest
Nếu bạn có các tệp cấu hình Apche2 phù hợp, bạn sẽ thấy đầu ra như "Cú pháp OK".

Cuối cùng, hãy khởi động lại dịch vụ 'apache2' để áp dụng các thay đổi mới thông qua lệnh systemctl như bên dưới.
Mã:
sudo systemctl restart apache2

Cấu hình cài đặt Neos CMS​

Để bắt đầu cấu hình cài đặt Neos CMS, hãy mở trình duyệt web của bạn và truy cập tên miền cài đặt Neos CMS của bạn (ví dụ: https://howtoforge.local/).

Đầu tiên, bạn sẽ thấy thông báo chào mừng từ Neos. Nhấp vào "Go to setup" để bắt đầu cấu hình Neos CMS.



Quá trình khởi tạo Neos CMS sẽ bắt đầu.



Để bắt đầu cấu hình Neos CMS, bạn sẽ được yêu cầu nhập mật khẩu thiết lập.

Quay lại máy chủ đầu cuối của bạn và chạy lệnh sau để hiển thị mật khẩu thiết lập cho Neos CMS.
Mã:
cat /var/www/neos/Data/SetupPassword.txt


Sao chép mật khẩu thiết lập đã tạo và dán vào trang thiết lập Neos. Sau đó, nhấp vào "Đăng nhập".



Bây giờ bạn sẽ được hiển thị trang kiểm tra yêu cầu Neos. Hãy đảm bảo rằng một trong các thao tác hình ảnh đã được cài đặt. Sau đó, nhấp vào "Tiếp theo".

Trong ví dụ này, chúng tôi đang sử dụng ImageMagick để thao tác hình ảnh và các gói php-imagick và ImageMagick được cài đặt.



Đối với cấu hình cơ sở dữ liệu, hãy nhập tên người dùng, mật khẩu và máy chủ cơ sở dữ liệu. Sau đó, chọn cơ sở dữ liệu để cài đặt Neos CMS. Sau đó, nhấp vào "Tiếp theo" để tiến hành cấu hình tiếp theo.



Bây giờ hãy nhấp vào chi tiết người dùng và mật khẩu quản trị viên mới, tên và họ. Sau đó, nhấp vào "Tiếp theo".



Đối với cấu hình trang web Neos mới, hãy chọn "Neos.Demo" trên gói trang web và nhập tên miền cài đặt Neos CMS của bạn vào cấu hình Tên trang web.

Nhấp vào "Tiếp theo" để tiến hành cài đặt.



Khi quá trình cài đặt và cấu hình Neos CMS hoàn tất, bạn sẽ thấy trang sau.



Nhấp vào nút "Đi đến giao diện" để có trang chủ mặc định của cài đặt Neos CMS. Hoặc bạn có thể nhấp vào "Đi đến giao diện" để có bảng điều khiển quản trị Neos CMS.

Dưới đây là trang chủ mặc định của cài đặt Neos CMS với gói trang web "Neos.Demo".



Khi bạn nhấp vào nút "Đi đến giao diện", bạn sẽ được chuyển hướng đến trang đăng nhập Neos CMS. Nhập tên người dùng và mật khẩu để cài đặt Neos CMS và nhấp vào "Đăng nhập".



Nếu tên người dùng và mật khẩu cho Neos CMS của bạn là đúng, bạn sẽ thấy bảng điều khiển quản trị của Neos CMS.


Kết luận​

Trong hướng dẫn này, bạn đã cài đặt Neos CMS với máy chủ web Apache2, máy chủ cơ sở dữ liệu MariaDB và PHP 8.1 trên máy chủ Debian 11. Ngoài ra, bạn đã tìm hiểu cách cài đặt PHP Composer để cài đặt các gói phụ thuộc PHP. Bạn cũng đã tạo cấu hình máy chủ ảo Apache cho Neos CMS với SSL bảo mật được bật.

Neos CMS là thế hệ CMS tiếp theo và linh hoạt cho các loại sử dụng khác nhau. Bây giờ bạn có thể bắt đầu quản lý nội dung và xuất bản trang web của mình bằng Neos CMS ngay lập tức.
 
Back
Bên trên