วิธีการตั้งค่าเวิร์กโฟลว์ Drupal ใน cPanel ด้วย Git - OSTraining

เผยแพร่แล้ว: 2022-06-29

ไม่เหมือนกับ CMS อื่น ๆ การอัพเดต Drupal core นั้นไม่ยาก แต่อย่างใดซับซ้อนเนื่องจากรายละเอียดทั้งหมดที่เกี่ยวข้อง ในบทช่วยสอนนี้ เราจะใช้การติดตั้ง Drupal 9 ในเครื่อง จากนั้นเราจะอัปโหลด (พุช) codebase นี้ไปยังที่เก็บส่วนกลางบน Bitbucket จากนั้นเราจะดาวน์โหลด (ดึง) ฐานรหัสจากที่เก็บนี้ไปยังเซิร์ฟเวอร์ที่ใช้งานจริง ซึ่งจะจัดเก็บเว็บไซต์ไว้

การใช้กระบวนการนี้ (เน้นเทอร์มินัล) คุณจะสามารถเร่งความเร็วการอัปเดตหลักของ Drupal และโมดูลได้ และคุณจะปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุด

ถือว่าคุณมี LAMP stack ติดตั้งอยู่ในระบบของคุณแล้ว นอกจากนี้ คุณต้องเข้าถึงเทอร์มินัลบนเว็บเซิร์ฟเวอร์ของคุณ

อ่านต่อเพื่อเรียนรู้วิธี!

ขั้นตอนที่ 1: ติดตั้ง Drupal 9 ในเครื่อง

เปิด แอปพลิเคชั่น Terminal ของระบบของคุณ แล้ว วาง เคอร์เซอร์บนไดเร็กทอรีเซิร์ฟเวอร์ในเครื่องของคุณ โดยทั่วไปคือ /var/www/html บนระบบ Linux

  • ประเภท : composer create-project drupal/recommended-project my_drupal

การดำเนินการนี้จะดาวน์โหลด Drupal เวอร์ชันล่าสุดที่เสถียรไปยังเครื่องของคุณ

  • ประเภท :
 cd my_drupal/ mkdir config cd web/sites/default/ cp default.settings.php settings.php cd .. sudo chmod -R 777 default/

คำสั่งเทอร์มินัลเหล่านี้ดำเนินการตามลำดับต่อไปนี้:

  • เข้าถึง ไดเร็กทอรี my_drupal
  • สร้าง ไดเร็กทอรีชื่อ config
  • เข้าถึง ไดเร็กทอรีเริ่มต้น
  • คัดลอก ไฟล์ default.settings.php และ เปลี่ยน ชื่อเป็น settings.php
  • กลับ ไปที่ไดเร็กทอรีเว็บไซต์
  • กำหนด สิทธิ์ส่วนกลางให้กับไดเร็กทอรีดีฟอลต์ เพื่อให้ระบบสามารถดำเนินการติดตั้งให้เสร็จสิ้นได้

เมื่อเสร็จแล้วเราต้องสร้างฐานข้อมูล

  • ชนิด : mysql -u root -p

ป้อน รหัสผ่านรูท MySQL ของคุณ

 create database my_drupal; exit;

สิ่งนี้จะสร้างฐานข้อมูลที่คุณจะลิงก์ไปยังฐานรหัสของคุณ

  • เปิด เว็บเบราว์เซอร์ของคุณ
  • ประเภท : localhost/my_drupal/web

เสร็จสิ้นกระบวนการติดตั้งในเครื่อง


ขั้นตอนที่ 2: การสร้างและเพิ่มคีย์ไปยัง Remote Repository

สำหรับจุดประสงค์ของบทช่วยสอนนี้ ฉันจะใช้ Bitbucket ขั้นตอนค่อนข้างคล้ายกับโปรไฟล์ Github

เมื่อคุณลงชื่อเข้าใช้บัญชี Bitbucket แล้ว ให้คลิกไอคอนโปรไฟล์ของคุณ (ในขณะที่เขียนบทความนี้) ที่มุมล่างซ้าย

  • เลือก การตั้งค่าส่วนบุคคล
  • คลิก คีย์ SSH
  • คลิก เพิ่มคีย์

คุณจะเห็นหน้าต่างป๊อปอัปแจ้งให้คุณใส่ป้ายกำกับและคีย์

  • พิมพ์ MyLaptop, BobsPC หรืออะไรก็ได้ที่คุณต้องการระบุเครื่องของคุณเองที่ Bitbucket
  • เปิด แอปพลิเคชันเทอร์มินัลของคุณ
  • ประเภท : ls -al ~/.ssh

ช่วงเวลาก่อนที่ชื่อจะบอกเรา นี่คือไดเร็กทอรีที่ซ่อนอยู่ มีความเป็นไปได้สองอย่าง:

  1. คุณได้รับรายการไฟล์ หนึ่งในไฟล์เหล่านี้มีนามสกุล .pub
  1. คุณได้รับข้อความ "ไม่พบไฟล์หรือไดเรกทอรี"

ไฟล์ที่มีนามสกุล .pub เป็นคีย์สาธารณะของระบบของคุณ หากคุณไม่เห็นไฟล์นี้ คุณต้องสร้างไฟล์ขึ้นมา หากคุณเห็นไฟล์ ให้อ่านต่อไป

  • ชนิด : ssh-keygen -t rsa -C "my_email@my_domain.com"
  • กด Enter เพื่อเลือกไดเร็กทอรีเริ่มต้นที่จะจัดเก็บคีย์ (.ssh)
  • ป้อน ข้อความรหัสผ่านเดียวกันสองครั้ง (คุณสามารถเว้นว่างไว้ได้โดย กด Enter สองครั้ง)

ระบบจะแจ้งให้คุณทราบเกี่ยวกับตำแหน่งของกุญแจสาธารณะและลายนิ้วมือของคุณ หากคุณมีคีย์ .pub ในระบบอยู่แล้ว ให้ย้อนกลับมาที่นี่

  • เปิด ไฟล์ .ssh/id_rsa.pub ด้วยโปรแกรมแก้ไขโค้ดที่คุณต้องการ
  • คัดลอก ข้อความทั้งหมดรวมทั้งที่อยู่อีเมลของคุณ
  • เปิด เบราว์เซอร์ของคุณและ วาง ลงในพื้นที่ข้อความ
  • คลิก เพิ่มคีย์

เครื่องท้องถิ่นของคุณสามารถเชื่อมต่อกับ Bitbucket ได้แล้ว


ขั้นตอนที่ 3: การสร้างที่เก็บระยะไกล

ในโปรไฟล์ Bitbucket ของคุณ:

  • คลิก สร้างที่เก็บ
  • เลือก เวิร์กสเปซและชื่อโปรเจ็กต์ ( สร้างหากนี่เป็นครั้งแรก )
  • ตั้ง ชื่อ repo ของคุณให้ถูกต้อง
  • ไม่ รวมไฟล์ README
  • ไม่ รวมไฟล์ .gitignore
  • คลิก สร้างที่เก็บ

ขั้นตอนที่ 4: เพิ่ม Local Repository ไปที่ Bitbucket

  • ประเภท :
 cd /var/www/html/my_drupal/web mv example.gitignore .gitignore git init git add . git commit -m 'Fresh Drupal installation'

คุณกำลังเข้าถึงไดเร็กทอรีรูทของการติดตั้ง Drupal เปลี่ยนชื่อไฟล์ example.gitignore เป็น .gitignore เริ่มต้นที่เก็บในเครื่อง เพิ่มไฟล์ลงในพื้นที่แสดง git และสุดท้ายยืนยัน "การเปลี่ยนแปลง" เหล่านี้ ว่างเปล่า) ไปยังที่เก็บ

  • ประเภท :
 git remote add origin [email protected]:[MY_PROJECT]/my-drupal.git git push -u origin master

คุณสามารถคัดลอกและวางคำสั่งทั้งสองนี้ได้จากหน้าที่เก็บที่ Bitbucket

  • พิมพ์ ใช่หากได้รับแจ้ง
  • ใส่ ข้อความรหัสผ่านของคุณ

ตรวจสอบพื้นที่เก็บข้อมูลบน Bitbucket ไฟล์เกือบทั้งหมดในไดเร็กทอรีเว็บ ( repo ในพื้นที่ของคุณ ) ถูกคัดลอกไปยังที่เก็บระยะไกลของคุณ ดูที่ไซต์/ไดเร็กทอรีเริ่มต้น

สังเกตว่าไฟล์ settings.php หายไป เนื่องจากรวมอยู่ในไฟล์ .gitignore

  • เปิด เทอร์มินัลของคุณและ
  • ประเภท : nano .gitignore
  • พิมพ์ Ctrl+x เพื่อปิดตัวแก้ไขนาโน

หากคุณดูการ์ดในภาพแรกของบทช่วยสอนนี้ คุณจะสังเกตเห็นว่าเราได้ทำงานของการ์ด 1 เสร็จแล้ว และเหลือเพียงงานเดียวในการ์ด 2 มาต่อกันที่ส่วนสุดท้ายของกระบวนการนี้ .


ขั้นตอนที่ 5: สร้างฐานข้อมูลสด

เปิดแดชบอร์ดของคุณที่ผู้ให้บริการโฮสต์และสร้างบัญชี Drupal ใหม่ด้วยชื่อโดเมนของคุณ

  • คลิก Drupal “ตัวติดตั้งปุ่มเดียว”
  • คลิก สร้างบัญชี

สิ่งนี้อาจแตกต่างกันไปในแต่ละผู้ให้บริการ ดังนั้นคุณต้องค้นหาทางออกของคุณที่นี่

คุณจะได้รับอีเมลพร้อมผู้ใช้ Drupal (ผู้ดูแลระบบ) และรหัสผ่าน Drupal นอกจากนี้ คุณยังจะได้รับชื่อผู้ใช้และรหัสผ่านสำหรับบัญชี cPanel ของคุณอีกด้วย นี่คือสิ่งที่เราต้องการ นอกจากนี้ยังมีอยู่บนแดชบอร์ดของคุณที่ผู้ให้บริการโฮสติ้งของคุณ

  • คลิก Enable SSH เพื่อให้เราสามารถเข้าถึงเทอร์มินัลบนเซิร์ฟเวอร์ที่ใช้งานจริงได้
  • คลิก ลิงก์ cPanel
  • พิมพ์ databases ในช่องค้นหา
  • เลือก ฐานข้อมูล MySQL

โปรแกรมติดตั้งแบบคลิกเดียวได้สร้างฐานข้อมูล ลบ ฐานข้อมูลนี้

  • ป้อน ชื่อที่ถูกต้องสำหรับฐานข้อมูลของคุณ

สังเกตคำนำหน้าฐานข้อมูลที่เพิ่มโดยอัตโนมัติโดย cPanel ( ในกรณีส่วนใหญ่ชื่อผู้ใช้ของคุณ )


ขั้นตอนที่ 6: นำเข้าฐานข้อมูลในเครื่อง

  • เปิด แอปพลิเคชันเทอร์มินัลของคุณ
  • ประเภท :
 mysqldump -u root p my_drupal > ~/[path/to/your/desktop]/[cpanel_sql_db_name].sql
  • ป้อน รหัสผ่านรูท SQL ของคุณ

การทำเช่นนี้จะทำสำเนาฐานข้อมูลของคุณและวางไว้บนเดสก์ท็อปของคุณ ฐานข้อมูลนี้บนเดสก์ท็อปต้องมีชื่อเดียวกับที่คุณสร้างบน cPanel

หากคุณมี MySQL เวอร์ชัน 8 บนเครื่องของคุณ ส่วนใหญ่แล้วคุณอาจต้องปรับฐานข้อมูลให้ทำงานกับ MySQL 5 ( มีให้ที่ผู้ให้บริการโฮสต์ของคุณ )

  • ประเภท :
 sed -i -e 's/utf8mb4_0900_ai_ci/utf8mb4_unicode_ci/g' [cpanel_sql_db_name].sql

นี่คือคำสั่ง Linux เพื่อดำเนินการนี้

  • เปิด แดชบอร์ด cPanel ของคุณ
  • พิมพ์ phpMyAdmin ในช่องค้นหาแล้ว เลือก
  • คลิก ที่ชื่อฐานข้อมูลของคุณเพื่อเลือก ควรว่างเปล่า ( ไม่พบตารางในฐานข้อมูล )
  • คลิก นำเข้า
  • คลิก เลือกไฟล์
  • เลือก ฐานข้อมูลจากเดสก์ท็อปของคุณ
  • เลื่อน ลงแล้ว คลิก ไป

การดำเนินการนี้จะใช้เวลาสองสามนาที ดังนั้นโปรดอดใจรอ


ขั้นตอนที่ 7: เปลี่ยนเส้นทางโดเมนของคุณ

Drupal ถูกเก็บไว้ในไดเร็กทอรีเว็บ ดังนั้นเพื่อเข้าถึงไซต์ของคุณ คุณต้องป้อน URL: https://yoursite.xxx/web

หากคุณใช้บริการระบบคลาวด์ ไม่มีปัญหา คุณสามารถแก้ไขไฟล์โฮสต์ได้ ด้วย cPanel สิ่งนี้เป็นไปไม่ได้ (เท่าที่ฉันรู้) คุณต้องสร้างการเปลี่ยนเส้นทาง URL ถาวร

  • เปิด แดชบอร์ด cPanel ของคุณ
  • พิมพ์ Redirects ในช่องค้นหา
  • กด Enter
  • เลือก การเปลี่ยนเส้นทางถาวร (301)
  • เลือก ชื่อโดเมนของคุณจากดรอปดาวน์
  • เพิ่ม ลิงค์เปลี่ยนเส้นทาง
  • คลิก เพิ่ม
  • พิมพ์ Domains ในช่องค้นหา
  • กด Enter
  • คลิก ตัว สลับบังคับเปลี่ยนเส้นทาง HTTPS

ขั้นตอนที่ 8: อัปโหลด Codebase

  • เปิด แดชบอร์ด cPanel ของคุณ
  • พิมพ์ File Manager ในช่องค้นหา
  • กด Enter
  • ดับเบิลคลิก ที่ไดเรกทอรี public_html
  • คลิก ปุ่มการ ตั้งค่า ที่ด้านบนขวาของหน้าจอ
  • ตรวจสอบ แสดงไฟล์ที่ซ่อน (dotfiles)
  • คลิก บันทึก
  • คลิก เลือกทั้งหมด
  • คลิก ลบ
  • เปิด ตัวจัดการไฟล์ของระบบของคุณ
  • บีบอัด ทั้งโฟลเดอร์ my_drupal
วิธีการตั้งค่าเวิร์กโฟลว์ Drupal ใน cPanel ด้วย Git
  • เปิด ตัวจัดการไฟล์ cPanel
  • คลิก อัปโหลด ภายในไดเรกทอรี public_html
  • คลิก เลือกไฟล์
  • อัพโหลด ไฟล์ zip
  • คลิก ย้อนกลับ เมื่อไฟล์ได้รับการอัปโหลดไปยังเซิร์ฟเวอร์แล้ว
  • คลิกขวา ที่ไฟล์ zip แล้ว เลือก Extract > Extract Files > Close
  • ดับเบิลคลิก ที่โฟลเดอร์ my_drupal
  • ตรวจสอบให้แน่ใจว่า คุณได้เปิดใช้งานตัวเลือก แสดงไฟล์ที่ซ่อนไว้
  • คลิก เลือกทั้งหมด
  • คลิก ย้าย
  • เลือก ไดเร็กทอรี public_html
  • คลิก ย้าย ไฟล์
  • คลิก ขึ้นหนึ่งระดับ
  • คลิกขวา ที่ไฟล์ zip แล้ว คลิก Delete
  • ลบ ไฟล์ zip ออกจากเซิร์ฟเวอร์ในพื้นที่ของคุณด้วย
  • เปิด เทอร์มินัลหรือตัวจัดการไฟล์ของคุณ
  • คัดลอก ไฟล์ settings.php ของการติดตั้งในเครื่องไปยังเดสก์ท็อป
  • เปิด ไฟล์ด้วยโปรแกรมแก้ไขโค้ดที่คุณต้องการ
  • แทนที่ ชื่อผู้ใช้ด้วยชื่อผู้ใช้ที่ผู้ให้บริการโฮสต์ของคุณให้มา ( ทำเช่นเดียวกันกับชื่อฐานข้อมูลและรหัสผ่าน – ดูขั้นตอน # 5 )
  • บันทึก และ ปิด ไฟล์
  • เปิด ตัวจัดการไฟล์ในแดชบอร์ด cPanel
  • คลิก public_html/web/sites/default
  • คลิก อัปโหลด
  • เลือก ไฟล์ settings.php จากเดสก์ท็อป
  • คลิก ใช่ เพื่อเขียนทับไฟล์
  • คลิก ย้อนกลับ
  • เปลี่ยน การอนุญาตไฟล์และไดเรกทอรีตามภาพด้านล่าง
  • คลิก ขึ้นหนึ่งระดับ
  • เปลี่ยน การอนุญาตของโฟลเดอร์เริ่มต้นเป็น 0755

ขั้นตอนที่ 9: ตั้งค่าเวอร์ชัน PHP บนเซิร์ฟเวอร์ของคุณ

Drupal ต้องการอย่างน้อย PHP 7.3

  • เปิด แดชบอร์ด cPanel ของคุณ
  • พิมพ์ Select PHP ในช่องค้นหา
  • กด Enter
  • เลือก 7.4
  • คลิก ตั้งเป็นปัจจุบัน
  • ตรวจสอบ ส่วนขยาย opcache
  • พิมพ์ [yoursite.xxx/web] ในแถบที่อยู่ของเบราว์เซอร์
  • คลิก เข้าสู่ระบบ ด้วยชื่อผู้ใช้และรหัสผ่านของการติดตั้ง Drupal ในพื้นที่ของคุณ
  • คลิก แท็บ แก้ไข และเปลี่ยนรหัสผ่านหากจำเป็น

ขั้นตอนที่ 10: เพิ่มรหัสเซิร์ฟเวอร์การผลิตไปยัง Bitbucket

  • เปิด แดชบอร์ด cPanel ของคุณ
  • พิมพ์ Terminal ในช่องค้นหา
  • คลิก Enter
  • คลิก ฉันเข้าใจและต้องการดำเนินการต่อ
  • ทำซ้ำ ขั้นตอนตามรายละเอียดในขั้นตอน # 2
  • ประเภท: less ~/.ssh/id_rsa.pub

น้อยกว่า คือตัวแก้ไขเทอร์มินัล

  • คัดลอก และวาง คีย์ดังที่แสดงในขั้นตอน # 2 คราวนี้สำหรับเครื่องเซิร์ฟเวอร์
  • ประเภท : q

ที่จะช่วยให้คุณออกน้อยลง

คุณจะมีหนึ่งคีย์สำหรับแต่ละเครื่อง ( หรือเครื่องเสมือน ) ที่เชื่อมต่อกับ Bitbucket


ขั้นตอนที่ 11: โคลนที่เก็บระยะไกลไปยังเซิร์ฟเวอร์ที่ใช้งานจริง

  • เปิด แอปพลิเคชันเทอร์มินัลของเซิร์ฟเวอร์ของคุณ
  • ประเภท :
 cd public_html rm -rf web git clone [email protected]:[YOUR_PROJECT]/my-drupal.git web

คุณกำลังลบโฟลเดอร์เว็บและแทนที่ด้วยที่เก็บระยะไกล คุณได้รับคำสั่งเทอร์มินัลสุดท้าย หากคุณเปิดที่เก็บ Bitbucket และคลิกปุ่ม Clone ( อย่าลืมเพิ่มเว็บที่ส่วนท้ายของคำสั่ง! )


ขั้นตอนที่ 12: ติดตั้งโมดูลหรือธีม

  • เปิด แอปพลิเคชั่นเทอร์มินัลของระบบในพื้นที่ของคุณ
  • ประเภท :
 cd /var/www/html/my_drupal composer require drupal/bootstrap
  • พิมพ์ cd web เพื่อเข้าสู่ไดเร็กทอรีเว็บ
  • ประเภท :
 git add . git commit -m 'Bootstrap theme installation' git status
  • พิมพ์ git push
  • ป้อน ข้อความรหัสผ่านหากต้องการ
  • เปิด เทอร์มินัลบนเซิร์ฟเวอร์ระยะไกลของคุณ
  • พิมพ์ ( ป้อนข้อความรหัสผ่าน หากจำเป็น ):
 git fetch git status

หากคุณเห็น: สาขาของคุณอยู่หลัง 'origin/master' 1 คอมมิต และสามารถกรอไปข้างหน้าได้

  • ประเภท : git merge

การดำเนินการนี้จะผสานโค้ดในเซิร์ฟเวอร์ของคุณด้วยโค้ดที่ดึงมาจากที่เก็บระยะไกล

  • ไป ที่ส่วนธีมของแบ็กเอนด์ Drupal ธีม Bootstrap ควรอยู่ที่นั่น

หมายเหตุ: คุณต้องทำซ้ำขั้นตอนสุดท้ายนี้เท่านั้น ทุกครั้งที่คุณดาวน์โหลดโมดูล อัปเดต Drupal core หรือแก้ไขโค้ด CSS ของธีมของคุณ


การแก้ไขปัญหา

หากคุณได้รับหน้าข้อผิดพลาด 404 หลังจากติดตั้ง Drupal บนเซิร์ฟเวอร์ที่ใช้งานจริง

  • ลบ ไฟล์ .htaccess
  • อัปโหลด อีกครั้งไปยังเซิร์ฟเวอร์

ฉันหวังว่าคุณจะชอบบทช่วยสอนนี้ ขอบคุณที่อ่าน!