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