如何在 Ubuntu 20.04 上安裝 Drupal 9

如何在 Ubuntu 20.04 上安裝 Drupal 9

在本文中,我們將解釋如何在 Ubuntu 20.04 上安裝 Drupal 9。本教程將指導您安裝和配置 Nginx 作為 Web 服務器、PHP、MariaDB 作為數據庫。

Drupal 是一個免費的開源內容管理系統。憑藉強大的內容管理工具、用於多渠道發布的複雜 API 以及持續創新的記錄——Drupal 已準備好成為您數字展示的中心。

在 Ubuntu 20.04 上安裝 Drupal 9

先決條件:

  • Ubuntu 20.04 專用服務器或 KVM VPS。
  • 使用 root 用戶訪問服務器。

1. 保持服務器最新:

# apt update -y

# apt upgrade -y

2. 安裝 Nginx

# apt install nginx -y

使用以下命令啟動並啟用 nginx.service:

# systemctl start nginx && systemctl enable nginx

如果您啟用了 UFW 防火牆並且防火牆阻止了 apache Web 服務器的請求,請在防火牆中打開一個端口。

# ufw allow 80/tcp

# ufw allow 443/tcp

# ufw reload

現在,讓我們驗證 Apache 安裝。打開瀏覽器並測試默認頁面。

http://[SERVER IP]

3.安裝MariaDB

我們需要導入包管理系統使用的公鑰。我們可以使用以下命令導入它:

# apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'

添加存儲庫

# add-apt-repository 'deb [arch=amd64,arm64,ppc64el] https://mirror.nodesdirect.com/mariadb/repo/10.5/ubuntu focal main'

導入密鑰並添加存儲庫後,您可以使用以下命令從 MariaDB 存儲庫安裝 MariaDB 10.5:

# apt update -y

# apt install mariadb-server -y

使用以下命令啟動並啟用mariadb.service

# systemctl start mariadb && systemctl enable mariadb

登錄mysql並創建數據庫和用戶。

# mysql

如果您設置了root密碼:

# mysql -u root -p

首先,我們可以創建一個 Drupal 可以控制的單獨數據庫。

我們可以通過鍵入以下內容為 Drupal 創建數據庫:

mysql> CREATE DATABASE drupal DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

您可以隨心所欲地替換和調用 drupal。

現在,創建一個用戶並授予我們之前創建的數據庫的權限。

mysql> GRANT ALL ON drupal.* TO 'drupaluser’@’localhost' IDENTIFIED BY 'password';

Resplace drupaluser到您的用戶名並設置密碼與強密碼。

要反映更改,請運行以下命令:

mysql> FLUSH PRIVILEGES;

一切完成後,退出mysql。

4.安裝PHP並配置

# apt install php-fpm php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip

驗證 PHP 安裝:

# php -v

打開php.ini文件並查找設置cgi.fix_pathinfo的參數。我們將通過刪除分號 (;) 並設置為 0 來取消註釋。

# vi /etc/php/7.4/fpm/php.ini

cgi.fix_pathinfo=0

完成後,保存並退出。

接下來,重啟 php-fpm 服務:

# systemctl restart php7.4-fpm

配置 Nginx 服務器塊以使用 PHP 處理器。這裡我們使用默認服務器塊。如果需要,您可以創建新的服務器塊。

# vi /etc/nginx/sites-available/default

  • 這裡我們需要添加一個 index.php 索引指令,以允許在請求目錄時提供 PHP 文件。
  • 修改 server_name 指令。將 localhost 替換為您的 FQDN 域名或公共 IP 地址。
  • 添加 try_files 指令以確保 Nginx 不會將錯誤請求傳遞給我們的 PHP 處理器。

服務器塊應如下所示:

server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/html;

index index.html index.htm index.nginx-debian.html index.php;

server_name server_domain_name_or_IP;

location / {
try_files $uri $uri/ /index.php$is_args$args;
}

location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

}

server_domain_name_or_IP替換為您的服務器 IP 或網站名稱。

測試配置文件。

# nginx -t

如果沒有錯誤,請重新啟動 Nginx 以進行必要的更改。

# systemctl restart nginx

5.下載Drupal

現在,我們可以從這裡下載最新版本的 Drupal。使用/tmp目錄下載並解壓 Drupal。

# cd /tmp

# wget https://ftp.drupal.org/files/projects/drupal-9.1.4.zip

解壓壓縮文件以創建 Drupal 目錄結構:

# unzip drupal-*.zip

# cd drupal-9.1.4

使用以下命令將所有文件移動到我們的根目錄中:

# mv * /var/www/html

接下來,將default.settings.php配置文件名更改 為settings.php

# cd /var/www/html/sites/default

# cp default.settings.php settings.php

6. 訪問 Drupal

最後,導航到瀏覽器並輸入服務器的域名或 IP 地址。使用啟動嚮導。配置完成後,您可以訪問 Drupal 控制面板。

如何在 Ubuntu 20.04 上安裝 Drupal 9

安裝已成功完成。

在本教程中,我們已經看到瞭如何在 Ubuntu 20.04 上安裝 Drupal 9。