如果你還在堅持使用 Drupal 7,那麼你已經進入了一個借來時間的階段。官方支持在 2023 年 11 月結束了。雖然 Tag1 Consulting 和其他一些公司一直在提供延長的商業支持,但到 2026 年 1 月,即使這些支持也會消失。之後呢?什麼都沒有。沒有更新,沒有安全補丁——你的網站變成了駭客的活靶子。更別說合規性的麻煩了,尤其是如果你在處理 GDPR 或進行支付交易。

在過去的幾年裡,我已經記不清有多少個 Drupal 7 網站我幫助遷移過。有些是簡單的宣傳冊網站,其他的則是充滿自訂模組和複雜內容類型的迷宮。相信我,試圖拼湊看起來像盤子上義大利麵爆炸的 Views 絕對不是什麼有趣的事。以下是我希望在早期就擁有的指南——一份關於你實際可以做什麼的直白明瞭的分析。

目錄

Drupal 7 End of Life 2026: Migration Options, Costs & Decision Guide

Drupal 7 終止支持時間表:實際上會發生什麼

這些日期可能看起來很模糊,所以讓我們把事實弄清楚:

  • 2023 年 11 月 1 日:Drupal 7 的社群支持結束了。Drupal 安全團隊不再提供安全警告。
  • 2024-2025 年期間:Tag1 Consulting 等第三方供應商提供延長支持,但需要付費。
  • 2026 年 1 月 5 日:Tag1 商業支持結束。這是你的截止日期。

2026 年 1 月之後,你將進入未知的領域。你的網站不會自動癱瘓,但威脅包括:

  1. Drupal 7 漏洞沒有安全更新
  2. PHP 相容性問題,隨著主機升級到 PHP 8.3+(告別 PHP 5.x/7.x 舒適區)
  3. 由於放棄 PHP 7.4 支持而帶來的託管障礙
  4. 要求最新軟體的合規混亂——想想 GDPR
  5. 保險障礙,因為修補和支持的平台變成保險必須品

了解你目前的 Drupal 7 網站

在選擇你的路徑之前,你需要完全清楚了解你的網站目前的狀況。跳過這一步,你可能會面臨預算爆炸。

內容審計

從內容審計開始。使用以下命令獲取你的內容類型列表:

SELECT type, COUNT(*) as count 
FROM node 
GROUP BY type 
ORDER BY count DESC;

你需要知道:

  • 實體引用及其相互連接
  • 媒體附件及其儲存位置
  • 分類法詞彙和任何層級
  • 來自那些可愛貢獻模組的自訂欄位

模組清單

列出你啟用的模組:

drush pm-list --status=enabled --type=module

按以下方式排序:

  • 核心功能
  • 自訂建立——這些可能會困擾你
  • 整合部分(支付閘道、CRM、SSO)
  • 遺忘的模組——你沒有記得存在的

自訂模組是真正的變數。如果沒有原始開發人員或文件,遷移時間可能輕鬆膨脹 30-50%。

流量和性能基準

讓你的分析調整到位,以便對遷移後的網站進行基準測試:

  • 月度會話和獨立訪客
  • Core Web Vitals(LCP、FID/INP、CLS)
  • 伺服器響應時間 (TTFB)
  • 快取命中率(特別是如果涉及 Varnish 或 CDN)

選項 1:升級到 Drupal 10/11

我們不要粉飾事實:從 Drupal 7 遷移到 10 就像在拆除舊房子後從頭開始建造房子一樣。D7 和 D8(D10/11 的基礎)之間的變化是巨大的。以下是你會面臨的情況:

涉及的內容

  1. 新的 Drupal 10/11 設置——忘記重用主題吧
  2. 內容類型復興和欄位匹配
  3. 內容遷移透過 Migrate 模組或自訂 ETL
  4. Views 重建——有趣的時刻
  5. 為 Symfony 架構重建自訂模組
  6. 尋找貢獻模組的替代品

何時有意義

  • 你的編輯人員在 Drupal 世界中根深蒂固
  • 你依賴特定的 Drupal 功能(例如,細粒度權限)
  • 多語言處理是必不可少的
  • 你在政府或教育等部門工作

何時沒有意義

  • 你的網站擁有精簡的內容模型
  • 前端性能改進至關重要
  • 專案預算緊張(想想低於 40,000 美元)
  • 你不使用 Drupal 大部分功能

Drupal 7 End of Life 2026: Migration Options, Costs & Decision Guide - architecture

選項 2:使用 Next.js + Supabase 進行無頭遷移

對於大多數中大型網站,這是我們在 Social Animal 推薦的途徑。其想法是使用無頭 CMS 來提供內容、一個時尚的前端框架,以及一個後端即服務來滿足你的伺服器端需求。

堆棧

  • 無頭 CMS:考慮 Sanity、Contentful 或 Storyblok
  • 前端:Next.js 用於網站——享受伺服器端呈現和靜態生成
  • 後端/資料庫:Supabase 用於身份驗證、資料庫、檔案儲存和邏輯
  • 託管:Vercel 或 Netlify 用於前端,Supabase 用於後端

為什麼選擇 Supabase?

Supabase 給你一系列豐富的功能:Postgres with REST/GraphQL APIs、身份驗證、檔案儲存和邊界函數。它符合以下要求:

  • 無需繁重 Drupal 模組的使用者註冊/登入
  • 在 Postgres 中整潔存儲的網路表單提交
  • 檔案處理
  • 搜尋選項(使用 Postgres 或添加 Typesense)
  • 常見的 CRUD 任務

Supabase 也很經濟實惠——免費層適合小型網站,Pro 計劃每月 25 美元非常划算。

// 範例:將 D7 網路表單遷移到 Supabase
import { createClient } from '@supabase/supabase-js'

const supabase = createClient(
  process.env.NEXT_PUBLIC_SUPABASE_URL!,
  process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!
)

export async function submitContactForm(formData: ContactFormData) {
  const { data, error } = await supabase
    .from('contact_submissions')
    .insert({
      name: formData.name,
      email: formData.email,
      message: formData.message,
      submitted_at: new Date().toISOString(),
    })
    .select()

  if (error) throw new Error(`Submission failed: ${error.message}`)
  return data
}

內容遷移策略

以下是內容遷移的粗略概述:

  1. 匯出使用自訂 Drush 或資料庫查詢從 D7 獲得的內容
  2. 轉換它以適應你的新 CMS 設置(真正的工作在這裡)
  3. 匯入到你的無頭 CMS 透過他們的 API
  4. 驗證一切——沒有什麼比破損的引用或遺漏的媒體更糟糕的了

有 5,000 個節點的典型網站可能意味著大約 2-4 週專門用於遷移。

選項 3:遷移到其他 CMS 平台

並非每個解決方案都需要無頭設置。WordPress、Craft CMS,甚至靜態網站生成器如 Astro 都是合法的替代方案。

平台比較

因素 Drupal 10/11 Next.js + 無頭 CMS WordPress Craft CMS Astro(靜態)
內容複雜性 優秀 良好(取決於 CMS) 中等 優秀 簡單
編輯 UX 陡峭 多樣 容易 良好 需要 CMS
性能 中等 優秀 中等 良好 優秀
開發人員池 縮小 成長中 豐富 成長中
託管成本/月 $50-$300 $0-$50 $10-$100 $20-$100 $0-$20
維護 低-中等 中等 中等
多語言 優秀 良好 插件相關 良好 多樣
遷移複雜性 中等 中等-高 低-中等

成本比較:真實專案的真實數字

以下是專案的開支概況:

小型網站

成本類別 Drupal 10 升級 Next.js + 無頭 WordPress 遷移
開發 £15k-£25k / $20k-$35k £12k-£20k / $15k-$28k £8k-£15k / $10k-$20k
內容遷移 £3k-£5k £3k-£5k £2k-£4k
設計/UX £5k-£10k £5k-£10k £3k-£8k
託管(年度) £600-£3,600 £0-£600 £120-£1,200
維護(年度) £3k-£8k £1k-£3k £2k-£5k
3 年 TCO £34k-£75k £23k-£44k £19k-£43k

中型網站

成本類別 Drupal 10 升級 Next.js + Supabase WordPress 遷移
開發 £40k-£80k / $55k-$110k £35k-£65k / $45k-$90k £25k-£50k / $35k-$70k
內容遷移 £8k-£15k £8k-£15k £6k-£12k
設計/UX £10k-£20k £10k-£20k £8k-£15k
託管(年度) £1,200-£6,000 £300-£1,800 £600-£3,600
維護(年度) £6k-£15k £3k-£8k £4k-£10k
3 年 TCO £79k-£178k £63k-£129k £53k-£117k

大型/企業網站

成本類別 Drupal 10 升級 Next.js + 無頭 CMS
開發 £100k-£250k / $130k-$350k £80k-£200k / $100k-$275k
內容遷移 £20k-£50k £20k-£50k
設計/UX £20k-£40k £20k-£40k
CMS 授權(年度) £0 £3k-£30k
託管(年度) £3,600-£24,000 £1,200-£6,000
維護(年度) £15k-£40k £8k-£25k
3 年 TCO £196k-£532k £147k-£413k

CMS 授權說明:Drupal 是開源的,沒有許可費用。但請注意——Contentful 等平台費用會快速增加。對於零 CMS 費用的自託管選項,請考慮 Payload CMS。

託管和基礎設施考慮

人們在遷移平台時經常會低估託管。這比你想像的要複雜。

Drupal 10 託管

Drupal 需要真正的託管設置:

  • Pantheon:$41-$200/月
  • Platform.sh:$52-$208/月
  • Acquia:從 £134/月開始
  • VPS:£20-£100/月(DIY 方法,所有更新由你完成)

Next.js + Supabase 託管

  • Vercel:免費層,Pro 每位使用者 £20/月
  • Supabase:免費開始,Pro 每月 £25
  • 無頭 CMS:差異很大

總金額?通常遠少於 Drupal 託管。

SSL、CDN、電子郵件——哎呀!

Drupal 有時需要額外的幫助,如 Cloudflare、透過 SendGrid 的電子郵件交易,以及具有 Let's Encrypt 的 SSL。相比之下,無頭設置從一開始就包含許多功能——但別忘了你的電子郵件設置。

決策框架

以下是一個框架來保持你的決策穩定:

保留 Drupal(升級到 D10/11),如果:

  • 你的編輯團隊喜歡 Drupal 方式
  • 你需要 Drupal 的細粒度權限
  • 多語言內容不是奢侈品
  • 行業標準將你鎖定在其中

進行無頭設置(Next.js + Supabase/無頭 CMS),如果:

  • 性能對你至關重要
  • 長期降低成本至關重要
  • 你的團隊更喜歡 JavaScript/TypeScript
  • 時尚的網路應用體驗是最終目標
  • 解耦符合你的內容策略

轉到 WordPress,如果:

  • 簡單的內容網站適合你
  • 你在計算每一分錢(就這些專案而言)
  • 你想要最簡單的編輯工具包

進行靜態設置(Astro),如果:

  • 資訊傳遞凌駕於一切
  • 最大性能最重要
  • 頁面和更新有限
  • 不需要複雜的使用者參與

尋找合適的機構

以下是如何發現好的機構:

詢問他們的遷移協議。 如果他們的計劃聽起來像是"我們隨便應付"的事務,就逃吧。

評估他們的 Drupal 專業知識。 即使你要離開它,Drupal 知識也能防止混亂的遷移。

檢查他們的前端工具庫。 無頭需要在你的目標框架中具有專業知識。

獲得固定價格報價。 考慮發現階段來明確範圍,然後再簽署合約。

釐清支持安排。 當出現問題時,誰會在深夜恐慌中提供幫助?

如果你正在深入思考這一舉動,我們很樂意聊天——隨時聯絡我們

常見問題

Drupal 7 支持何時結束?
社群支持於 2023 年 11 月 1 日停止。Tag1 的延長支持於 2026 年 1 月 5 日結束。截止日期後,你面臨沒有更新的風險。

我可以在終止支持後繼續使用 Drupal 7 嗎?
從技術上講,是的。但要預期未修補的漏洞和合規問題。終止支持軟體對 GDPR 和網路保險來說是一個硬性底線。

從 Drupal 7 遷移到 Drupal 10 真的是完全重建嗎?
是的。從 D7 到 D8(D10/11 的基礎)的變化是地震級別的。為完全重建專案做準備,而不是溫和的"升級"。

典型的 Drupal 7 遷移需要多長時間?
小型網站:6-10 週。中型:12-20 週。大型/企業:6-12 個月。內容和 QA 通常比預期需要更長的時間。

最便宜的遷移選項是什麼?
WordPress 通常是最直接網站最經濟的(從 £8k/$10k)。然而,在三年內,進行無頭設置可能會節省維護和託管費用。

我應該遷移到 Drupal 10 還是使用 Next.js 進行無頭設置?
Drupal 適合根深蒂固的編輯設置。為了獲得現代性能和成本效率,Next.js 可能是你的最佳選擇。上述框架應該為你澄清。

我應該使用哪個無頭 CMS 來替換 Drupal 7?
Sanity、Payload CMS 或 Storyblok 都是很好的選擇,Payload 提供自託管路徑。根據組織適應度進行選擇——團隊規模和複雜性。

我需要在遷移期間重新設計我的網站嗎?
重新設計和遷移通常在經濟上配對良好。如果預算緊張,可以複製設計並計劃稍後進行增強。