Ubuntu 24.04 LTS 安裝 Drupal 11 完整教學

2025-05-01

標籤: 架站

廣告

Ubuntu 24.04 LTS 安裝 Drupal 11 完整教學

本教學說明如何在 Ubuntu 24.04 安裝 Drupal 11,使用 Composer 建立專案,搭配 Nginx + PHP 8.3-FPM + MariaDB + Certbot SSL,並整合 Drush 開發指令工具。


📦 1. 系統準備

更新系統並安裝基本工具

sudo apt update && sudo apt upgrade -y
sudo apt install curl git unzip zip vim htop -y

📅 2. 安裝 Nginx

sudo apt install nginx -y
sudo systemctl enable nginx
sudo systemctl start nginx

🐐 3. 安裝 PHP 8.3 與常用模組

sudo apt install php8.3 php8.3-fpm php8.3-cli php8.3-mysql php8.3-gd \
php8.3-xml php8.3-mbstring php8.3-curl php8.3-zip php8.3-bcmath php8.3-opcache -y

啟動 PHP FPM:

sudo systemctl enable php8.3-fpm
sudo systemctl start php8.3-fpm

最佳化 Opcache(修改 /etc/php/8.3/fpm/php.ini):

opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.revalidate_freq=0

🐬 4. 安裝 MariaDB 並建立資料庫

sudo apt install mariadb-server -y
sudo mysql_secure_installation

建立資料庫與帳號:

CREATE DATABASE drupal DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'drupaluser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON drupal.* TO 'drupaluser'@'localhost';
FLUSH PRIVILEGES;

🛠️ 5. 安裝 Composer 並建立 Drupal 專案

cd /var/www
sudo composer create-project drupal/recommended-project drupal

Drupal 安裝完後,實際網站根目錄為:

/var/www/drupal/web

🚀 6. 安裝 Drush 與更新依賴

cd /var/www/drupal
composer require drush/drush
composer update

推薦建立 symlink:

sudo ln -s /var/www/drupal/vendor/bin/drush /usr/local/bin/drush

啟用 Drush 指令:

drush updatedb -y
drush cr

🌐 7. 設定 Nginx

建立 vhost 設定檔:

sudo nano /etc/nginx/sites-available/drupal

範例內容:

server {
    listen 80;
    server_name yourdomain.com;
    root /var/www/drupal/web;

    index index.php index.html;

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

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires max;
        log_not_found off;
    }
}

啟用設定並重新啟動 Nginx:

sudo ln -s /etc/nginx/sites-available/drupal /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

🔐 8. 安裝 HTTPS【Certbot】

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com

✅ 9. Drupal 初始設定

使用瀏覽器開啟 https://yourdomain.com,開始 Drupal 圖形化安裝。

如有遭遇權限問題,可設定:

sudo chown -R www-data:www-data /var/www/drupal

📆 10. 常用 Drush 指令

drush status
drush cr               # 清除快取
drush updatedb -y      # 執行資料庫升級
drush uli              # 產生一次性登入連結

📌 結論

這套 LEMP + Drupal 11 的組合為現代化開發提供最佳基礎。通過 Composer 與 Drush 可進行模組管理與部署自動化,搭配 Certbot 與 Opcache 也提升了資安與效能。

廣告