Drupal là một hệ thống quản lý nội dung phổ biến được viết bằng PHP. Nó được sử dụng bởi ít nhất 14% trong số 10.000 trang web hàng đầu trên internet, từ các ngành công nghiệp doanh nghiệp toàn cầu, chính phủ, giáo dục và các trang web của tổ chức. Drupal cung cấp một hệ thống có khả năng mở rộng cao được tích hợp với các ứng dụng kỹ thuật số và có thể được sử dụng để tạo nhiều trang web cho các tổ chức khác nhau với hỗ trợ đa ngôn ngữ.
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Drupal trên máy chủ Ubuntu 24.04. Chúng tôi sẽ cài đặt Drupal với LAMP Stack (Linux, Apache, MariaDB và PHP) và bảo mật Drupal bằng HTTPS từ Letsencrypt.
Trong phần này, bạn sẽ cài đặt các dependency cho Drupal. Điều này bao gồm LAMP Stack (Linux, Apache, MariaDB và PHP) và Composer.
Trước tiên, hãy cập nhật chỉ mục gói Ubuntu của bạn bằng lệnh sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22706%22%20height=%22190%22%3E%3C/svg%3E
Bây giờ hãy cài đặt LAMP Stack (Linux, Apache, MariaDB và PHP) và các phụ thuộc Composer vào hệ thống Ubuntu của bạn bằng lệnh sau:
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=%22128%22%3E%3C/svg%3E
Sau khi cài đặt, hãy kiểm tra trạng thái của cả Apache và MariaDB, sau đó kiểm tra phiên bản PHP và Composer.
Kiểm tra dịch vụ Apache bằng lệnh bên dưới. Điều này sẽ đảm bảo rằng Apache đang chạy và được bật trên máy chủ của bạn.
Out enabled cho biết máy chủ web Apache sẽ khởi động khi khởi động. Và active(running) cho thấy Apache đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22216%22%3E%3C/svg%3E
Bây giờ hãy kiểm tra trạng thái dịch vụ MariaDB bằng lệnh sau:
Giống như Apache, bạn sẽ thấy đầu ra được bật và trạng thái 'active(running)', xác nhận rằng MariaDB sẽ khởi động khi khởi động và trạng thái là đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22215%22%3E%3C/svg%3E
Cuối cùng, hãy kiểm tra phiên bản PHP và Composer bằng lệnh bên dưới. Vào thời điểm này, kho lưu trữ Ubuntu 24.04 mặc định cung cấp PHP 8.3 và Composer 2.7.1.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22690%22%20height=%22385%22%3E%3C/svg%3E
Mở cấu hình php.ini bằng lệnh nano editor sau.
Thay đổi cấu hình mặc định bằng lệnh sau và đảm bảo điều chỉnh các tùy chọn memory_limit và date.timezone với máy chủ của bạn môi trường.
Khi hoàn tất, hãy lưu và thoát tệp.
Bây giờ hãy khởi động lại máy chủ web Apache để áp dụng cấu hình PHP mới.
Bảo mật cài đặt máy chủ MariaDB của bạn bằng lệnh sau. Lệnh này sẽ được nhắc về cấu hình máy chủ MariaDB.
Bây giờ hãy nhập Y để áp dụng các thay đổi cho MariaDB hoặc nhập n để từ chối:
Đăng nhập vào máy chủ MariaDB bằng lệnh sau - Nhập mật khẩu gốc MariaDB của bạn khi được nhắc.
Chạy các truy vấn sau để tạo cơ sở dữ liệu và người dùng mới cho Drupal. Trong ví dụ này, bạn sẽ tạo người dùng mới 'drupal', cơ sở dữ liệu 'drupaldb', với mật khẩu 'DrupalSecurePassword'. Hãy đảm bảo thay đổi thông tin bằng thông tin chi tiết của bạn.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22218%22%3E%3C/svg%3E
Bây giờ hãy chạy truy vấn bên dưới để xác minh người dùng 'drupal'. Đảm bảo rằng người dùng 'drupal' có thể truy cập cơ sở dữ liệu 'drupaldb'.
Đầu ra sau đây cho biết rằng người dùng 'drupal' có thể truy cập cơ sở dữ liệu 'drupaldb'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22138%22%3E%3C/svg%3E
Cuối cùng, nhập quit để thoát khỏi máy chủ MariaDB.
Đi đến thư mục /var/www và tải xuống mã nguồn Drupal bằng lệnh wget bên dưới.
Khi quá trình tải xuống hoàn tất, hãy giải nén mã nguồn Drupal và đổi tên thư mục đã giải nén thành 'drupal'. Với lệnh này, /var/www/drupal sẽ trở thành thư mục gốc trang web hoặc thư mục gốc tài liệu để cài đặt Drupal.
Bây giờ hãy chạy lệnh bên dưới để thay đổi quyền sở hữu /var/www/drupal thành người dùng www-data và quyền 755.
Đầu tiên, hãy chạy lệnh bên dưới để kích hoạt các mô-đun Apache 'ssl' và 'rewrite'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22604%22%20height=%22257%22%3E%3C/svg%3E
Bây giờ hãy tạo một Cấu hình máy chủ ảo Apache bằng lệnh sau.
Sao chép và dán cấu hình bên dưới và đảm bảo thay đổi tùy chọn ServerName bằng tên miền cài đặt Drupal của bạn.
Khi hoàn tất, hãy lưu và thoát tệp.
Bây giờ hãy chạy lệnh bên dưới để kích hoạt tệp máy chủ ảo 'drupal.conf', sau đó xác minh cú pháp Apache của bạn. Nếu bạn có cú pháp Apache phù hợp, bạn sẽ nhận được đầu ra 'Cú pháp OK'.
Cuối cùng, hãy khởi động lại Apache bằng lệnh sau để áp dụng cấu hình máy chủ ảo mới của bạn. Với điều này, Drupal của bạn sẽ có thể truy cập được.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22715%22%20height=%22398%22%3E%3C/svg%3E
Cài đặt Certbot và plugin Certbot Apache bằng lệnh sau - Nhập Y để xác nhận cài đặt.
Sau khi cài đặt hoàn tất, hãy chạy lệnh certbot bên dưới để tạo chứng chỉ SSL/TLS cho cài đặt Drupal của bạn. Hãy đảm bảo thay đổi địa chỉ email và tên miền bằng thông tin của bạn.
Khi hoàn tất, chứng chỉ SSL/TLS của bạn sẽ được tạo theo gen tại thư mục /etc/letsencrypt/live/example.com và cài đặt Drupal của bạn sẽ tự động được bảo mật bằng HTTPS.
Chọn ngôn ngữ mặc định cho Drupal, sau đó nhấp vào Lưu và tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22397%22%3E%3C/svg%3E
Chọn cấu hình cài đặt Drupal ưa thích của bạn, nhấp vào Lưu và tiếp tục. Đối với người mới bắt đầu, hãy sử dụng cấu hình Chuẩn hoặc Bản demo. Nếu bạn có kinh nghiệm với Drupal, bạn có thể chọn cấu hình Tối thiểu.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22392%22%3E%3C/svg%3E
Bây giờ, hãy đảm bảo rằng bạn đã vượt qua kiểm tra môi trường Drupal, đảm bảo rằng máy chủ của bạn đã sẵn sàng để cài đặt Drupal.
Nếu đã sẵn sàng, bạn sẽ được chuyển hướng đến cấu hình cơ sở dữ liệu cho Drupal. Nhập thông tin chi tiết về máy chủ MariaDB, tên cơ sở dữ liệu, tên người dùng và mật khẩu của bạn, sau đó nhấp vào Lưu và tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22523%22%3E%3C/svg%3E
Quá trình cài đặt Drupal sẽ bắt đầu:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22399%22%3E%3C/svg%3E
Sau Quá trình cài đặt Drupal đã hoàn tất, bạn phải cấu hình trang Drupal của mình. Nhập Tên trang, địa chỉ email, tên người dùng quản trị, mật khẩu, quốc gia mặc định và múi giờ.
Nhấp vào Lưu và tiếp tục để xác nhận.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22492%22%3E%3C/svg%3E
Bây giờ nếu quá trình cài đặt thành công, bạn sẽ nhận được thông báo "Xin chúc mừng, bạn đã cài đặt Drupal!".
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22430%22%3E%3C/svg%3E
Tại đây, hãy nhấp vào menu Quản lý > Cấu hình để truy cập bảng điều khiển quản trị Drupal. Bạn sẽ thấy nội dung sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22427%22%3E%3C/svg%3E
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Drupal trên máy chủ Ubuntu 24.04. Chúng tôi sẽ cài đặt Drupal với LAMP Stack (Linux, Apache, MariaDB và PHP) và bảo mật Drupal bằng HTTPS từ Letsencrypt.
Điều kiện tiên quyết
Trước khi bắt đầu, hãy đảm bảo bạn có:- Máy chủ Ubuntu 24.04
- Người dùng không phải root có quyền quản trị viên
- Tên miền trỏ đến địa chỉ IP của máy chủ
Cài đặt Dependencies
Drupal là CMS dựa trên MySQL/MariaDB và PHP. Để cài đặt, bạn phải đảm bảo cả MySQL/MariaDB và PHP đều được cài đặt trên hệ thống của mình. Đối với máy chủ web, bạn có thể sử dụng Apache hoặc Nginx.Trong phần này, bạn sẽ cài đặt các dependency cho Drupal. Điều này bao gồm LAMP Stack (Linux, Apache, MariaDB và PHP) và Composer.
Trước tiên, hãy cập nhật chỉ mục gói Ubuntu của bạn bằng lệnh sau.
Mã:
sudo apt update
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22706%22%20height=%22190%22%3E%3C/svg%3E
Bây giờ hãy cài đặt LAMP Stack (Linux, Apache, MariaDB và PHP) và các phụ thuộc Composer vào hệ thống Ubuntu của bạn bằng lệnh sau:
Mã:
sudo apt install apache2 mariadb-server composer php php-apcu php-dev libapache2-mod-php libcurl4-openssl-dev php-cli php-mysql php-zip php-gd php-fpm php-json php-common php-intl php-mbstring php-curl php-xml php-pear php-tidy php-uploadprogress php-soap php-bcmath php-xmlrpc
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22128%22%3E%3C/svg%3E
Sau khi cài đặt, hãy kiểm tra trạng thái của cả Apache và MariaDB, sau đó kiểm tra phiên bản PHP và Composer.
Kiểm tra dịch vụ Apache bằng lệnh bên dưới. Điều này sẽ đảm bảo rằng Apache đang chạy và được bật trên máy chủ của bạn.
Mã:
sudo systemctl is-enabled apache2
sudo systemctl status apache2
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22216%22%3E%3C/svg%3E
Bây giờ hãy kiểm tra trạng thái dịch vụ MariaDB bằng lệnh sau:
Mã:
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22215%22%3E%3C/svg%3E
Cuối cùng, hãy kiểm tra phiên bản PHP và Composer bằng lệnh bên dưới. Vào thời điểm này, kho lưu trữ Ubuntu 24.04 mặc định cung cấp PHP 8.3 và Composer 2.7.1.
Mã:
sudo php -v
sudo -u www-data composer -v
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22690%22%20height=%22385%22%3E%3C/svg%3E
Cấu hình PHP
Sau khi cài đặt các phụ thuộc, bạn cần thiết lập PHP cho Drupal. Bạn cần chỉnh sửa tệp 'php.ini' mặc định và thay đổi một số cấu hình mặc định khi cần cho Drupal.Mở cấu hình php.ini bằng lệnh nano editor sau.
Mã:
sudo nano /etc/php/8.3/apache2/php.ini
Mã:
memory_limit = 512M
upload_max_filesize = 60M
max_execution_time = 300
date.timezone = Europe/Amsterdam
Bây giờ hãy khởi động lại máy chủ web Apache để áp dụng cấu hình PHP mới.
Mã:
sudo systemctl restart apache2
Cấu hình máy chủ MariaDB
Bây giờ bạn đã cấu hình PHP, hãy cấu hình máy chủ MariaDB bằng cách bảo mật máy chủ này bằng Tiện ích 'mariadb-secure-installation' và tạo một cơ sở dữ liệu và người dùng mới cho Drupal.Bảo mật cài đặt máy chủ MariaDB của bạn bằng lệnh sau. Lệnh này sẽ được nhắc về cấu hình máy chủ MariaDB.
Mã:
sudo mariadb-secure-installation
- Cài đặt MariaDB mặc định không có mật khẩu, hãy nhấn ENTER khi được nhắc nhập mật khẩu.
Bây giờ hãy nhập Y để thiết lập mật khẩu gốc MariaDB. Sau đó, nhập mật khẩu mới cho MariaDB và lặp lại mật khẩu.
Nhập Y để xóa người dùng ẩn danh khỏi cài đặt MariaDB của bạn.
Nhập Y một lần nữa khi được nhắc tắt đăng nhập từ xa cho người dùng gốc MariaDB.
Nhập Y để xóa kiểm tra cơ sở dữ liệu mặc định khỏi MariaDB của bạn.
Cuối cùng, hãy nhập Y để tải lại các đặc quyền bảng và áp dụng các thay đổi mới.
Đăng nhập vào máy chủ MariaDB bằng lệnh sau - Nhập mật khẩu gốc MariaDB của bạn khi được nhắc.
Mã:
sudo mariadb -u root -p
Mã:
CREATE DATABASE drupaldb;
CREATE USER drupal@localhost IDENTIFIED BY 'DrupalSecurePassword';
GRANT ALL ON drupaldb.* TO drupal@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22218%22%3E%3C/svg%3E
Bây giờ hãy chạy truy vấn bên dưới để xác minh người dùng 'drupal'. Đảm bảo rằng người dùng 'drupal' có thể truy cập cơ sở dữ liệu 'drupaldb'.
Mã:
SHOW GRANTS FOR drupal@localhost;
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22138%22%3E%3C/svg%3E
Cuối cùng, nhập quit để thoát khỏi máy chủ MariaDB.
Tải xuống mã nguồn Drupal
Trong bước này, bạn sẽ tải xuống mã nguồn Drupal và thiết lập thư mục gốc web với quyền sở hữu và quyền cấp phép phù hợp. Trong ví dụ này, bạn sẽ tải xuống và cài đặt phiên bản mới nhất của Drupal.Đi đến thư mục /var/www và tải xuống mã nguồn Drupal bằng lệnh wget bên dưới.
Mã:
cd /var/www/
wget https://www.drupal.org/download-latest/tar.gz -O drupal.tar.gz
Mã:
tar -xvf drupal.tar.gz
mv drupal-* /var/www/drupal
Mã:
sudo chown -R www-data:www-data /var/www/drupal/
sudo chmod -R 755 /var/www/drupal/
Thiết lập máy chủ ảo Apache
Sau khi tải xuống Drupal, bạn phải tạo máy chủ ảo Apache để cài đặt. Vì vậy, hãy đảm bảo bạn đã chuẩn bị tên miền của mình để cài đặt Drupal.Đầu tiên, hãy chạy lệnh bên dưới để kích hoạt các mô-đun Apache 'ssl' và 'rewrite'.
Mã:
sudo a2enmod ssl rewrite
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22604%22%20height=%22257%22%3E%3C/svg%3E
Bây giờ hãy tạo một Cấu hình máy chủ ảo Apache bằng lệnh sau.
Mã:
sudo nano /etc/apache2/sites-available/drupal.conf
Mã:
ServerName howtoforge.local
ServerAdmin [emailprotected]
DocumentRoot /var/www/drupal
# Add security
php_flag register_globals off
ErrorLog ${APACHE_LOG_DIR}/howtoforge.local.error.log
CustomLog ${APACHE_LOG_DIR}/howtoforge.local.access.log combined
SSLOptions +StdEnvVars
Options FollowSymlinks
#Allow .htaccess
AllowOverride All
Require all granted
SecRuleEngine Off
# or disable only problematic rules
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Bây giờ hãy chạy lệnh bên dưới để kích hoạt tệp máy chủ ảo 'drupal.conf', sau đó xác minh cú pháp Apache của bạn. Nếu bạn có cú pháp Apache phù hợp, bạn sẽ nhận được đầu ra 'Cú pháp OK'.
Mã:
sudo a2ensite drupal.conf
sudo apachectl configtest
Mã:
sudo systemctl restart apache2
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22715%22%20height=%22398%22%3E%3C/svg%3E
Bảo mật Drupal bằng HTTPS
Để bảo mật Drupal bằng HTTPS, bạn có thể sử dụng chứng chỉ SSL miễn phí từ Letsencrypt. Nếu bạn đang cài đặt trên tên miền công cộng, hãy làm theo bước này để bật HTTPS trên cài đặt Drupal của bạn. Nếu bạn đang sử dụng tên miền cục bộ, bạn có thể sử dụng chứng chỉ SSL tự ký.Cài đặt Certbot và plugin Certbot Apache bằng lệnh sau - Nhập Y để xác nhận cài đặt.
Mã:
sudo apt install certbot python3-certbot-apache
Mã:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [emailprotected] -d howtoforge.local
Cài đặt Drupal
Truy cập tên miền Drupal của bạn, chẳng hạn nhưhttps://howtoforge.local từ trình duyệt web ưa thích của bạn. Nếu cài đặt thành công, bạn sẽ nhận được trình hướng dẫn cài đặt Drupal.Chọn ngôn ngữ mặc định cho Drupal, sau đó nhấp vào Lưu và tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22397%22%3E%3C/svg%3E
Chọn cấu hình cài đặt Drupal ưa thích của bạn, nhấp vào Lưu và tiếp tục. Đối với người mới bắt đầu, hãy sử dụng cấu hình Chuẩn hoặc Bản demo. Nếu bạn có kinh nghiệm với Drupal, bạn có thể chọn cấu hình Tối thiểu.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22392%22%3E%3C/svg%3E
Bây giờ, hãy đảm bảo rằng bạn đã vượt qua kiểm tra môi trường Drupal, đảm bảo rằng máy chủ của bạn đã sẵn sàng để cài đặt Drupal.
Nếu đã sẵn sàng, bạn sẽ được chuyển hướng đến cấu hình cơ sở dữ liệu cho Drupal. Nhập thông tin chi tiết về máy chủ MariaDB, tên cơ sở dữ liệu, tên người dùng và mật khẩu của bạn, sau đó nhấp vào Lưu và tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22523%22%3E%3C/svg%3E
Quá trình cài đặt Drupal sẽ bắt đầu:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22399%22%3E%3C/svg%3E
Sau Quá trình cài đặt Drupal đã hoàn tất, bạn phải cấu hình trang Drupal của mình. Nhập Tên trang, địa chỉ email, tên người dùng quản trị, mật khẩu, quốc gia mặc định và múi giờ.
Nhấp vào Lưu và tiếp tục để xác nhận.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22492%22%3E%3C/svg%3E
Bây giờ nếu quá trình cài đặt thành công, bạn sẽ nhận được thông báo "Xin chúc mừng, bạn đã cài đặt Drupal!".
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22430%22%3E%3C/svg%3E
Tại đây, hãy nhấp vào menu Quản lý > Cấu hình để truy cập bảng điều khiển quản trị Drupal. Bạn sẽ thấy nội dung sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22427%22%3E%3C/svg%3E