Firebase Hosting มีเครื่องมือผ่านทั้งคอนโซล Firebase และ CLI ของ Firebase เพื่อจัดการช่องทาง รุ่น และเวอร์ชันสำหรับเว็บไซต์ Hosting ของคุณ
ภาพรวมของโครงสร้างพื้นฐาน Hosting
การทำความเข้าใจโครงสร้างพื้นฐานของ Hosting จะช่วยให้คุณเข้าใจตัวเลือกการจัดการที่อธิบายไว้ในหน้านี้
โปรเจ็กต์ Firebase ทุกโปรเจ็กต์จะมีเว็บไซต์ Hosting เริ่มต้น โดยมีสิทธิ์เข้าถึงทรัพยากรทั้งหมดของโปรเจ็กต์ (ฐานข้อมูล การตรวจสอบสิทธิ์ ฟังก์ชัน ฯลฯ) เว็บไซต์มีแชแนลอย่างน้อย 1 รายการ โดยแต่ละแชแนลจะเชื่อมโยงกับ URL ที่แสดงเนื้อหาที่เฉพาะเจาะจงและการกำหนดค่า Hosting
ลําดับชั้นของโฮสติ้ง Firebase" />
เว็บไซต์ Hosting ทุกแห่งจะมีแชแนล "ใช้งานอยู่" ที่แสดงเนื้อหาและการกำหนดค่า Hosting ที่ (1) โดเมนย่อยที่ Firebase จัดสรรให้ของเว็บไซต์ (SITE_ID.web.app
และ SITE_ID.firebaseapp.com
) และ (2) โดเมนที่กำหนดเองที่เชื่อมต่ออยู่ นอกจากนี้ คุณยังสร้างแชแนล "ตัวอย่าง" ที่แสดงเนื้อหาและการกำหนดค่าของตนเองใน "URL ตัวอย่าง" ชั่วคราวที่แชร์ได้ (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app
เนื้อหาและการกำหนดค่าที่แต่ละช่องแสดงจะรวมอยู่ในออบเจ็กต์เวอร์ชันที่มีตัวระบุที่ไม่ซ้ำกัน เมื่อคุณติดตั้งใช้งานในเว็บไซต์ Firebase จะสร้างออบเจ็กต์รุ่นที่ชี้ไปยังเวอร์ชันที่เฉพาะเจาะจง เวอร์ชันมีข้อมูลเมตาเกี่ยวกับการทำให้ใช้งานได้ เช่น ผู้ที่ทําให้ใช้งานได้และเวลาที่ทําให้ใช้งานได้
จากHostingแดชบอร์ดของโปรเจ็กต์ Firebase คุณสามารถดูประวัติทั้งหมดของรุ่นต่างๆ ของช่องแบบสดได้ในตารางประวัติรุ่น หากคุณมีเว็บไซต์ Hosting หลายเว็บไซต์ ให้คลิกดูสำหรับเว็บไซต์ที่ต้องการเพื่อดูประวัติรุ่น หากมีช่องตัวอย่าง ช่องเหล่านั้นจะแสดงในหน้าแดชบอร์ด Hosting ด้วย
จัดการการตั้งค่าของช่อง
คุณควบคุมการตั้งค่าของช่องแต่ละช่องในเว็บไซต์ได้ การตั้งค่าบางอย่าง เช่น การหมดอายุของช่อง จะมีผลกับช่องเวอร์ชันตัวอย่างเท่านั้น
จำกัดจำนวนรุ่นที่จะเก็บไว้
ทุกครั้งที่คุณทำให้ใช้งานได้กับเวอร์ชัน (และสร้างรุ่น) Hosting จะเก็บเวอร์ชันที่เชื่อมโยงกับรุ่นก่อนหน้าในพื้นที่เก็บข้อมูล Hosting ของโปรเจ็กต์ คุณสามารถกำหนดจำนวนรุ่นที่จะเก็บไว้สำหรับแต่ละช่องในโปรเจ็กต์ได้ ทั้งช่องเวอร์ชันที่เผยแพร่และช่องเวอร์ชันตัวอย่าง
เหตุใด Hosting จึงเก็บรุ่นก่อนหน้าไว้
สำหรับช่องเวอร์ชันที่ใช้งานอยู่ การคงรุ่นก่อนหน้าไว้จะช่วยให้คุณเปลี่ยนกลับไปใช้เว็บไซต์เวอร์ชันก่อนหน้าได้ หากจำเป็น สำหรับการรีเซ็ตช่องเวอร์ชันตัวอย่าง คุณจะยังดำเนินการย้อนกลับไม่ได้เหตุผลที่จำกัดจำนวนรุ่นที่จะเก็บไว้
ฟีเจอร์นี้ช่วยคุณควบคุมระดับการใช้งานของพื้นที่เก็บข้อมูล Hosting ของโปรเจ็กต์ได้ เนื่องจากเนื้อหาสำหรับรุ่นก่อนหน้าจะยังคงอยู่ในพื้นที่เก็บข้อมูลนี้ คุณสามารถตรวจสอบพื้นที่เก็บข้อมูลHostingได้จากแท็บพื้นที่เก็บข้อมูลในคอนโซลจะเกิดอะไรขึ้นเมื่อคุณจำกัดจำนวนรุ่นที่จะเก็บไว้
เมื่อคุณกำหนดขีดจำกัดสำหรับรุ่นที่จะเก็บไว้ ระบบจะกำหนดเวลาให้มีการลบเนื้อหาของรุ่นที่อยู่เหนือขีดจำกัดที่กำหนดโดยเริ่มจากรุ่นที่เก่าที่สุดเป็นอันดับแรก
วิธีกำหนดขีดจำกัดพื้นที่เก็บข้อมูลของรุ่นสำหรับช่องมีดังนี้
ในคอนโซล Firebase ให้เข้าถึงกล่องโต้ตอบการตั้งค่าพื้นที่เก็บข้อมูลรุ่น
สำหรับช่องที่เผยแพร่อยู่
ในตารางประวัติการเผยแพร่ของเว็บไซต์ ให้คลิก แล้วเลือก การตั้งค่าพื้นที่เก็บข้อมูลการเผยแพร่สำหรับช่องตัวอย่าง
ในแถวสําหรับช่องตัวอย่าง ให้คลิก แล้วเลือก การตั้งค่าช่อง
ป้อนจำนวนรุ่นที่ต้องการเก็บไว้ แล้วคลิกบันทึก
ตั้งค่าเวลาหมดอายุของเวอร์ชันตัวอย่าง
โดยค่าเริ่มต้น แชแนลตัวอย่างจะหมดอายุภายใน 7 วันนับจากวันที่สร้าง แต่แชแนลเวอร์ชันที่เผยแพร่ของเว็บไซต์จะไม่มีวันหมดอายุ
เมื่อเวอร์ชันตัวอย่างหมดอายุ ระบบจะกำหนดเวลาลบช่อง รวมถึงเวอร์ชันที่เผยแพร่และเวอร์ชันที่เชื่อมโยงภายใน 24 ชั่วโมง ระบบจะปิดใช้งาน URL ตัวอย่างที่เชื่อมโยงด้วย ข้อยกเว้นของการลบเวอร์ชันนี้คือหากมีการเชื่อมโยงเวอร์ชันกับรุ่นอื่น (เช่น การโคลนเวอร์ชันจากเวอร์ชันหนึ่งไปยังอีกเวอร์ชันภายในเว็บไซต์เดียวกัน)
Hosting รองรับการควบคุมวันหมดอายุของช่อง 2 วิธี ดังนี้
Firebaseคอนโซล
ในแถวสําหรับแชแนลเวอร์ชันตัวอย่าง ให้คลิก แล้วเลือก การตั้งค่าแชแนล ป้อนวันที่และเวลาหมดอายุFirebase CLI
เมื่อคุณติดตั้งใช้งานในช่องเวอร์ชันตัวอย่าง ให้ส่งผ่านตัวเลือก--expires DURATION
ตัวอย่างเช่นfirebase hosting:channel:deploy new-awesome-feature --expires 7d
โดยวันที่หมดอายุจะไม่เกิน 30 วันนับจากวันที่ติดตั้งใช้งาน ใช้
h
สำหรับชั่วโมงd
สำหรับวัน และw
สำหรับสัปดาห์ (เช่น12h
,7d
,2w
ตามลำดับ)
โคลนเวอร์ชันจากช่องหนึ่งไปยังอีกช่องหนึ่ง
คุณสามารถโคลนเวอร์ชันที่ติดตั้งใช้งานจากช่องทางหนึ่งไปยังอีกช่องทางหนึ่งได้ คุณสามารถโคลนในช่องเวอร์ชันที่เผยแพร่หรือเวอร์ชันตัวอย่าง ในเว็บไซต์ Hosting เว็บไซต์ หรือแม้แต่ในโปรเจ็กต์ Firebase ต่างๆ
คำสั่งโคลนจะทำให้ใช้งานได้ในช่อง "เป้าหมาย" ด้วย เพื่อให้เนื้อหาและการกำหนดค่า Hosting ที่โคลนแสดงโดยอัตโนมัติใน URL ที่เชื่อมโยงของช่อง "เป้าหมาย"
ฟีเจอร์นี้มีประโยชน์ต่อการติดตามเวอร์ชัน หรือในกรณีที่คุณต้องการมั่นใจว่าได้ใช้เนื้อหาที่ตรงกันทุกประการกับที่คุณเคยดูและ/หรือทดสอบในช่องอื่นแล้ว โดยตัวอย่างมีดังนี้
โคลนจากช่องตัวอย่าง "QA" ไปยังช่องที่เผยแพร่ของเว็บไซต์ (เผยแพร่แล้ว)
โคลนจากแชแนลที่เผยแพร่ของเว็บไซต์ไปยังแชแนลตัวอย่าง "แก้ไขข้อบกพร่อง" (เช่น ก่อนการย้อนกลับ)
โคลนจากแชแนลในโปรเจ็กต์ Firebase "ระยะก่อนเผยแพร่" ไปยังแชแนลเวอร์ชันตัวอย่างในโปรเจ็กต์ Firebase "เวอร์ชันที่ใช้งานจริง"
หากต้องการโคลนเวอร์ชัน ให้เรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีใดก็ได้
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID
แทนที่ตัวยึดตําแหน่งแต่ละรายการด้วยข้อมูลต่อไปนี้
SOURCE_SITE_ID และ TARGET_SITE_ID: รหัสของเว็บไซต์ Hosting ที่มีช่อง
- สําหรับเว็บไซต์ Hosting เริ่มต้น ให้ใช้รหัสโปรเจ็กต์ Firebase
- คุณระบุเว็บไซต์ได้ Hosting รายการที่อยู่ในโปรเจ็กต์ Firebase เดียวกันหรือในโปรเจ็กต์ Firebase อื่น
SOURCE_CHANNEL_ID และ TARGET_CHANNEL_ID: เป็นตัวระบุแชแนล
- สำหรับช่องถ่ายทอดสด ให้ใช้
live
เป็นรหัสช่อง - หากยังไม่มีช่อง "เป้าหมาย" ที่ระบุไว้ คําสั่งนี้จะสร้างช่องก่อนนำไปใช้งาน
- สำหรับช่องถ่ายทอดสด ให้ใช้
เปลี่ยนกลับไปเป็นเวอร์ชันก่อนหน้าของเว็บไซต์
คุณสามารถเปลี่ยนกลับไปแสดงแชแนลการถ่ายทอดสดเวอร์ชันก่อนหน้าของเว็บไซต์ได้ การดําเนินการนี้จะมีประโยชน์ในกรณีที่รุ่นปัจจุบันมีปัญหาและคุณต้องการเปลี่ยนกลับไปใช้เว็บไซต์เวอร์ชันที่ทราบกันว่าใช้งานได้ หรือเว็บไซต์ของคุณอาจแสดงเนื้อหาชั่วคราวสําหรับวันหยุดหรือกิจกรรมพิเศษ แต่ตอนนี้คุณต้องการเปลี่ยนกลับไปแสดงเนื้อหา "ปกติ"
การย้อนกลับเป็นการสร้างรุ่นใหม่ที่แสดงเนื้อหาเวอร์ชันเดียวกับรุ่นก่อนหน้า ในตารางประวัติรุ่น ทั้ง 2 รุ่นจะแสดงตัวระบุเวอร์ชันเดียวกัน
วิธีเปลี่ยนกลับมีดังนี้
ในคอนโซล Firebase ในตารางประวัติรุ่นของเว็บไซต์ ให้วางเมาส์เหนือรายการรุ่นก่อนหน้าที่ต้องการเปลี่ยนกลับไปใช้
คลิก
แล้วเลือกเปลี่ยนกลับ
ลบรุ่นด้วยตนเอง
คุณอาจต้องลบผลงานออกจากช่องที่เผยแพร่อยู่ด้วยตนเองเพื่อเพิ่มพื้นที่เก็บข้อมูล Hosting สำหรับโปรเจ็กต์ คุณจะลบได้เฉพาะรุ่นก่อนหน้าเท่านั้น แต่จะลบรุ่นที่แสดงอยู่ในเว็บไซต์เวอร์ชันที่เผยแพร่อยู่ไม่ได้
การลบผลงานจะเป็นการลบเนื้อหารุ่นนั้นจริงๆ ซึ่งมีกำหนดการเพื่อลบภายใน 24 ชั่วโมง ระบบจะเก็บออบเจ็กต์รุ่นไว้เพื่อให้คุณยังคงดูข้อมูลเมตา (ผู้ที่ติดตั้งใช้งานและเวลาที่ติดตั้งใช้งาน) ของออบเจ็กต์นั้นได้
วิธีลบรุ่นมีดังนี้
ในคอนโซล Firebase ในตารางประวัติรุ่นของเว็บไซต์ ให้วางเมาส์เหนือรายการรุ่นก่อนหน้าที่ต้องการลบ
คลิก
แล้วเลือกลบ
ลบไฟล์ด้วยตนเอง
ใน Firebase Hosting วิธีหลักในการลบไฟล์ที่เลือกจากเว็บไซต์ที่ติดตั้งใช้งานแล้วคือการลบไฟล์ในเครื่อง จากนั้นจึงติดตั้งใช้งานอีกครั้ง
ลบแชแนลเวอร์ชันตัวอย่างด้วยตนเอง
คุณดูตัวอย่างช่องได้โดยคลิกช่องที่ต้องการดูตัวอย่าง จากมุมมองนี้ คุณสามารถดู ลบ และเปลี่ยนกลับการติดตั้งใช้งานและรุ่นล่าสุดที่เชื่อมโยงกับแชแนลที่เฉพาะเจาะจงได้ คุณลบช่องทางตัวอย่างได้ แต่จะลบรายการที่เผยแพร่อยู่ของเว็บไซต์ไม่ได้
เมื่อคุณลบแชแนลเวอร์ชันตัวอย่าง ระบบจะกำหนดเวลาในการลบแชแนล รวมถึงรุ่นและเวอร์ชันที่เกี่ยวข้องภายใน 24 ชั่วโมง ระบบจะปิดใช้งาน URL ตัวอย่างที่เชื่อมโยงด้วย ข้อยกเว้นของการลบเวอร์ชันคือในกรณีที่เวอร์ชันหนึ่งเชื่อมโยงกับรุ่นอื่น (เช่น กรณีที่คุณโคลนเวอร์ชันจากช่องหนึ่งไปยังอีกช่องภายในเว็บไซต์เดียวกัน)
Hosting รองรับการลบช่องทางทดลองใช้ 2 วิธีดังนี้
คอนโซล Firebase
ในแถวของแชแนลตัวอย่าง ให้คลิก แล้วเลือก ลบแชแนล ยืนยันการลบFirebase CLI
เรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีใดก็ได้firebase hosting:channel:delete CHANNEL_ID
คำสั่ง CLI สำหรับตัวอย่างแชแนลและการโคลน
คำสั่งสำหรับแชแนลตัวอย่าง
คำสั่งทั้งหมดสำหรับช่องทางตัวอย่างรองรับเป้าหมายการทำให้ใช้งานได้หากคุณมีเว็บไซต์ Hosting หลายเว็บไซต์
คำสั่ง | คำอธิบาย |
---|---|
firebase hosting:channel:create CHANNEL_ID
|
สร้างแชแนลตัวอย่างใหม่ในเว็บไซต์ Hosting เริ่มต้นโดยใช้ คำสั่งนี้ไม่ทำให้ใช้งานได้กับแชแนล |
firebase hosting:channel:delete CHANNEL_ID
|
ลบแชแนลตัวอย่างที่ระบุ คุณลบช่องที่เผยแพร่อยู่ของเว็บไซต์ไม่ได้ |
firebase hosting:channel:deploy CHANNEL_ID
|
ทำให้เนื้อหา Hosting ใช้งานได้และกำหนดค่าให้กับเวอร์ชันตัวอย่างที่ระบุ หากยังไม่มีช่องทางตัวอย่าง คำสั่งนี้จะสร้างช่องในเว็บไซต์ Hosting เริ่มต้น ก่อนนำไปใช้งานในช่อง |
firebase hosting:channel:list
|
แสดงรายการช่องทั้งหมด (รวมถึงช่อง "ถ่ายทอดสด") ในเว็บไซต์ Hosting เริ่มต้น |
firebase hosting:channel:open CHANNEL_ID
|
เปิดเบราว์เซอร์ไปยัง URL ของช่องที่ระบุ หรือแสดง URL หากเปิดในเบราว์เซอร์ไม่ได้ |
คำสั่งสำหรับการโคลนเวอร์ชัน
คำสั่ง | คำอธิบาย |
---|---|
firebase hosting:clone \
|
โคลนเวอร์ชันที่เพิ่งติดตั้งใช้งานล่าสุดในแชแนล "ต้นทาง" ที่ระบุไปยังแชแนล "เป้าหมาย" ที่ระบุ คำสั่งนี้จะใช้กับแชแนล "target" ที่ระบุด้วย หากยังไม่มีแชแนล "เป้าหมาย" คำสั่งนี้จะสร้างแชแนลตัวอย่างใหม่ในเว็บไซต์ Hosting "เป้าหมาย" ก่อนที่จะทำให้ใช้งานได้กับแชแนล |
firebase hosting:clone \
|
โคลนเวอร์ชันที่ระบุไปยังแชแนล "เป้าหมาย" ที่ระบุ คำสั่งนี้จะใช้กับแชแนล "target" ที่ระบุด้วย หากยังไม่มีช่อง "เป้าหมาย" คำสั่งนี้จะสร้างช่องตัวอย่างใหม่ในเว็บไซต์ Hosting "เป้าหมาย" ก่อนนำไปใช้งานในช่อง คุณดู |