อัปเกรด Drupal

ในการติดตั้ง Edge for Private Cloud ของพอร์ทัลบริการสำหรับนักพัฒนาซอฟต์แวร์ Apigee (หรือเรียกง่ายๆ ว่าพอร์ทัล) คุณอาจได้รับการแจ้งเตือนว่า Drupal เวอร์ชันใหม่พร้อมใช้งานแล้ว เวอร์ชันใหม่อาจหมายถึงการเปิดตัวฟีเจอร์ Drupal, แพตช์, การอัปเดตความปลอดภัย หรือการอัปเดต Drupal ประเภทอื่นๆ ในกรณีที่มีการอัปเดตความปลอดภัย คุณต้องอัปเกรดการติดตั้ง Drupal โดยเร็วที่สุดเพื่อให้เว็บไซต์ยังคงปลอดภัย

อัปเกรด Drupal Core

ขั้นตอนด้านล่างอธิบายวิธีอัปเดตการติดตั้ง Private Cloud ของ Drupal 7.x.y เป็นเวอร์ชันย่อยอื่น (เช่น Drupal 7.54 เป็น 7.59)

โปรดทราบข้อมูลต่อไปนี้

  • ขั้นตอนนี้จะอัปเดตการติดตั้ง Drupal ของคุณเท่านั้น และจะไม่อัปเดตซอฟต์แวร์ Apigee ที่จัดส่งโดยเป็นส่วนหนึ่งของพอร์ทัล ดูข้อมูลเกี่ยวกับการอัปเกรดซอฟต์แวร์พอร์ทัล Apigee ได้ที่หัวข้ออัปเกรดพอร์ทัล

    หากในระหว่างการอัปเกรด Private Cloud (เช่น จาก 4.18.05 เป็น 4.19.01) ยูทิลิตีการอัปเดต Apigee จะดาวน์เกรดเวอร์ชัน Drupal จริงๆ คุณอาจต้องเรียกใช้ยูทิลิตีการอัปเกรด Drupal อีกครั้ง ดูข้อมูลเพิ่มเติมได้ที่เรียกใช้การอัปเกรด Drupal อีกครั้ง

  • คุณต้องเรียกใช้คำสั่ง Drush (Drupal Shell) จากไดเรกทอรีรูทของเว็บไซต์พอร์ทัล โดยค่าเริ่มต้น พอร์ทัลจะติดตั้งที่ตำแหน่งต่อไปนี้
    • /opt/apigee/apigee-drupal/wwwroot (Nginx)
    • /var/www/html (Apache)
    ขั้นตอนด้านล่างนี้จะถือว่ามีการติดตั้งเซิร์ฟเวอร์ Nginx ที่ตำแหน่งเริ่มต้นข้างต้น

ระบุเวอร์ชัน Drupal ปัจจุบัน

ก่อนที่จะเริ่มการอัปเดต Drupal คุณจะดูเวอร์ชัน Drupal ปัจจุบันได้โดยการเรียกใช้คำสั่งต่อไปนี้จากโฟลเดอร์การติดตั้ง Drupal โดยค่าเริ่มต้น Drupal จะติดตั้งใน /opt/apigee/apigee-drupal/wwwroot:

cd /opt/apigee/apigee-drupal/wwwroot
drush status | grep 'Drupal version'

คุณควรเห็นเอาต์พุตในรูปแบบต่อไปนี้

Drupal version          :  7.54

หากติดตั้ง Drupal ในไดเรกทอรีอื่นที่ไม่ใช่ /opt/apigee/apigee-drupal/wwwroot โปรดตรวจสอบว่าได้เปลี่ยนเป็นไดเรกทอรีดังกล่าวก่อนเรียกใช้คำสั่ง drush

อัปเดตเวอร์ชัน Drupal

ส่วนนี้จะอธิบายวิธีใช้คำสั่ง Drush จากบรรทัดคำสั่งเพื่ออัปเดตเวอร์ชัน Drupal โปรดดูการอัปเดต Drupal โดยใช้ Drush (Drupal.org)

วิธีอัปเดตการติดตั้ง Drupal

  1. เปลี่ยนเป็นไดเรกทอรี /opt/apigee/apigee-drupal/wwwroot หรือไดเรกทอรีที่คุณติดตั้งพอร์ทัลไว้
  2. สำรองข้อมูลไฟล์ ไดเรกทอรี และฐานข้อมูลทั้งหมดอย่างเต็มรูปแบบ บันทึกข้อมูลสำรองในตำแหน่งนอกการติดตั้ง Drupal โปรดดูวิธีการทั้งหมดที่หัวข้อสำรองข้อมูลพอร์ทัล

    หากแก้ไขไฟล์ เช่น .htaccess, robots.txt หรือ defaults.settings.php (ในไดเรกทอรี sites) คุณจะต้องใช้การเปลี่ยนแปลงอีกครั้งหลังจากการอัปเดต นอกจากนี้คุณยังต้องใช้การปรับแต่งที่ทำในไดเรกทอรี sites/all อีกครั้งด้วย

  3. กำหนดให้เว็บไซต์เข้าสู่โหมดการบำรุงรักษา:
    drush vset --exact maintenance_mode 1
    drush cache-clear all
  4. ติดตั้ง Drupal เวอร์ชันที่ต้องการโดยใช้คำสั่งต่อไปนี้
    drush pm-update drupal-version

    โดยที่ version คือเวอร์ชันที่ต้องการ

    หรือเรียกใช้ drush pm-update drupal เพื่ออัปเดตเป็นเวอร์ชันหลักของ Drupal ล่าสุดก็ได้ คุณสามารถเรียกใช้ drush pm-updatestatus เพื่อแสดงรายการอัปเดตย่อยที่มีในโปรเจ็กต์ Drupal หลักและ Contrib

  5. ใช้การเปลี่ยนแปลงที่ทำกับ .htaccess, robots.txt หรือ defaults.settings.php อีกครั้ง (ในไดเรกทอรี sites)
  6. นำการเปลี่ยนแปลงที่ทำกับไดเรกทอรี sites/all ไปใช้อีกครั้ง
  7. นำเว็บไซต์ของคุณออกจากโหมดการบำรุงรักษา:
    drush vset --exact maintenance_mode 0
    drush cache-clear all

อัปเกรดโมดูลการแปลง PHP และ Drupal

เมื่อคุณอัปเกรด Drupal โดยใช้วิธีการข้างต้นในส่วนนี้ โมดูลที่ใช้โดย Drupal เช่น Contrib และ PHP จะได้รับการอัปเกรดด้วย อย่างไรก็ตาม คุณควรติดตามโมดูล Drupal ล่าสุดระหว่างการเปิดตัว Private Cloud

โปรดทราบว่าหากโมดูลอยู่ใน /profiles/apigee/modules/contrib คุณแทนที่ด้วยโมดูลเวอร์ชันใหม่กว่าได้โดยจัดเก็บเวอร์ชันใหม่ไว้ใน /sites/all/modules/contrib Edge สำหรับ Private Cloud จะใช้เวอร์ชันใหม่ใน /sites/all/modules/contrib แทนเวอร์ชันเก่าใน /profiles/apigee/modules/contrib ดูข้อมูลเพิ่มเติมได้ที่การอัปเดตโมดูล (Drupal.org)

หากคุณติดตั้ง Private Cloud เวอร์ชันใหม่ที่มีโมดูลเวอร์ชันล่าสุดที่จัดเก็บไว้ใน /sites/all/modules/contrib ก่อนหน้านี้ ให้นำโมดูลดังกล่าวออกจาก /sites/all/modules/contrib ดูข้อมูลเพิ่มเติมได้ที่การย้ายโมดูลและธีม (Drupal.org)

หากพบปัญหาในระหว่างการอัปเดต ฉันควรทำอย่างไร

คืนค่าเว็บไซต์กลับไปเป็นสถานะก่อนหน้าโดยใช้ไฟล์ข้อมูลสำรองที่คุณสร้างไว้ โปรดติดต่อทีมสนับสนุนของ Apigee Edge และแจ้งข้อความแสดงข้อผิดพลาดที่มีการรายงานในระหว่างการอัปเดต