ขั้นตอน Upgrade เว็บไซต์ Drupal 10 เป็น Drupal 11

Drupal 10

  • Drupal 10.0.0 - เปิดตัววันที่ 15 ธันวาคม 2022
  • แผนหยุดการสนับสนุนความปลอดภัย - ประมาณกลางปี 2026 เมื่อ Drupal 12 เปิดตัว

Drupal 11

  • Drupal 11.0.0 - เปิดตัววันที่ 2 สิงหาคม 2024
  • แผนหยุดการสนับสนุนความปลอดภัย - ยังไม่ประกาศ

เตรียมตัวก่อนอัปเกรด Drupal 10 เป็น Drupal 11

อัปเดท Drupal 10 ให้เป็นเวอร์ชั่นล่าสุด (วันที่เขียนบทความนี้คือ 10.4.6)

ดาวน์โหลด และ ติดตั้งโมดูล upgrade_status เพื่อตรวจสอบว่าสภาพแวดล้อมปัจจุบัน พร้อมอัปเกรดเป็น Drupal 11 หรือไม่

composer require drupal/upgrade_status
vendor/bin/drush en upgrade_status -y

ในตัวอย่างพบว่า มีโมดูลต้องการอัปเดทข้ามเวอร์ชั่น Coffee 8.x-1.4 แต่เวอร์ชั่นที่รองรับ Drupal 11 คือ 2.0.1

ให้ทำการอัปเดทโมดูลดังกล่าวเสียก่อน แล้วกลับมาตรวจสอบอีกครั้ง

ดาวน์โหลด โมดูล Coffee ที่รองรับ Drupal 11 (กำหนดเวอร์ชั่น)

composer require 'drupal/coffee:^2.0'

ตรวจสอบ อัปเดทฐานข้อมูล ว่ามีการเปลี่ยนแปลงหรือไม่

vendor/bin/drush updatedb:status
vendor/bin/drush updatedb

ล้างแคช

vendor/bin/drush cr

ในบางกรณี หากพบโมดูลที่ยังไม่รองรับ Drupal 11 ถ้าไม่ใช่โมดูลที่สำคัญในการทำงานของเว็บ แนะนำให้ลบออก

แต่ถ้าโมดูลนั้นสำคัญ อาจทำให้เว็บไซต์เสียหาย จำเป็นต้องรอให้นักพัฒนาโมดูลทำการอัปเดทเพื่อให้รองรับ Drupal 11 เสียก่อน ถึงจะกลับมาตรวจสอบอีกครั้งว่าพร้อมอัปเกรดเป็น Drupal 11 หรือไม่

เริ่มกระบวนการ อัปเกรด Drupal 10 เป็น Drupal 11

ปลดล็อก permissions ไฟล์ระบบ

chmod 777 web/sites/default
chmod 666 web/sites/default/*settings.php
chmod 666 web/sites/default/*services.yml

กำหนดเวอร์ชั่นที่ต้องการ ในไฟล์ composer.json

composer require 'drupal/core-recommended:^11' 'drupal/core-composer-scaffold:^11' 'drupal/core-project-message:^11' --no-update

ทดลองการอัปเกรด ก่อนดำเนินการจริง

composer update --dry-run

หากไม่พบปัญหาใด ก็สั่งอัปเกรดได้เลย

composer update

ทดสอบ composer ว่ายังใช้งานได้ปกติ

composer install

ตรวจสอบสถานะ และอัปเดทฐานข้อมูล

vendor/bin/drush updatedb:status
vendor/bin/drush updatedb

ล้างแคช

vendor/bin/drush cr

ล็อก permissions ไฟล์ระบบ กลับไปสถานะเดิม

chmod 755 web/sites/default
chmod 644 web/sites/default/*settings.php
chmod 644 web/sites/default/*services.yml

จบกระบวนการ ไป reload หน้าเว็บเบราว์เซอร์ได้เลย

หมายเหตุ : ควรมีแนวทางการสำรองข้อมูล เผื่อกรณีฉุกเฉิน อัปเกรดแล้วเว็บไซต์ใช้งานไม่ได้

การส่งความคิดเห็น ถือว่าคุณยอมรับ ข้อกำหนดการใช้งาน และ นโยบายความเป็นส่วนตัว ของเรา