ไดเรกทอรีบทความ
ต้องการสร้างระบบจัดเก็บข้อมูลราคาประหยัดสุดๆ ด้วย Backblaze B2 แต่ไม่รู้ว่าจะผูกชื่อโดเมนอย่างไร? บทความนี้จะแนะนำคุณทีละขั้นตอนตลอดกระบวนการผสานรวม Backblaze กับชื่อโดเมนที่กำหนดเองจาก Cloudflare
คู่มือการกำหนดค่าอย่างละเอียดเกี่ยวกับการแก้ไข DNS การกำหนดค่าใบรับรอง SSL และการตั้งค่ากฎการกำหนดเส้นทางนี้ จะช่วยให้คุณใช้งาน Bandwidth Alliance ได้อย่างสมบูรณ์แบบและได้รับปริมาณการดาวน์โหลดฟรี 100% ปลดล็อกคู่มือการกำหนดค่าขั้นสูงที่ใช้งานง่ายนี้ได้เลย!
เมื่อไม่กี่วันก่อน ฉันลองเล่นกับการโฮสต์รูปภาพ โดยพยายามย้ายรูปภาพทั้งหมดจากบล็อกของฉันไปยัง Backblaze B2 และใช้ Cloudflare CDN เพื่อเพิ่มความเร็วในการถ่ายโอน
ด้วยเหตุนี้ เรื่องทั้งหมดนี้จึงใช้เวลาไปตลอดทั้งบ่าย
บทเรียนออนไลน์กระจัดกระจายและไม่ต่อเนื่อง มีขั้นตอนที่ขาดหายไปหรือผิดพลาดมากมาย ทำให้ฉันรู้สึกหงุดหงิดมาก หลังจากทำเสร็จแล้ว ฉันจึงตัดสินใจทำตามขั้นตอนทั้งหมดตั้งแต่ต้นจนจบเพื่อป้องกันไม่ให้คนอื่นทำผิดพลาดแบบเดียวกัน

โดยสรุป: โซลูชันนี้ยอดเยี่ยมมาก Backblaze B2 ให้บริการปริมาณข้อมูลฟรีต่อวัน และเมื่อรวมกับการแคช CDN ของ Cloudflare ความเร็วก็เร็วพอ และค่าใช้จ่ายแทบเป็นศูนย์ หลังจากใช้งานไปหนึ่งเดือน ค่าใช้จ่ายก็เป็นศูนย์ (หากใช้เกินปริมาณฟรี อาจมีค่าใช้จ่ายเพียงไม่กี่เซ็นต์เท่านั้น)
เอาล่ะ คุยกันมาพอแล้ว มาเริ่มกันเลยดีกว่า
ขั้นตอนแรกคือการลงทะเบียนบัญชี Backblaze และบัญชี Cloudflare ซึ่งทำได้ง่ายมาก ใครๆ ก็ทำได้
สร้างถังเก็บของ
หลังจากลงทะเบียนแล้ว ให้ไปที่ส่วนหลังบ้านของ Backblaze คลิกที่ บัญชีของฉัน จากนั้นคลิกที่ Buckets แล้วคลิกที่ สร้าง Bucket
คุณสามารถตั้งชื่อบัคเก็ตเป็นอะไรก็ได้ สิ่งสำคัญคือต้องเลือก "สาธารณะ" สำหรับสิทธิ์การเข้าถึง ปล่อยการตั้งค่าอื่นๆ ไว้ตามค่าเริ่มต้น

หลังจากสร้างภาพแล้ว คุณสามารถอัปโหลดภาพเพื่อตรวจสอบว่าสามารถเข้าถึงได้หรือไม่ การคลิกที่รายละเอียดของภาพจะแสดงลิงก์ ซึ่งจะมีลักษณะดังนี้:
https:// f005.backblazeb2. com/file/bucket-name/xxxxx.jpg

ชื่อโดเมนนี้ถูกกำหนดแบบสุ่มโดย Backblaze และพูดตามตรงคือมันดูไม่สวยงามนัก แถมยังเปิดเผยข้อมูลพื้นที่จัดเก็บข้อมูลของคุณโดยตรงอีกด้วย ดังนั้น ขั้นตอนต่อไปคือการเปลี่ยนไปใช้ Cloudflare
DNS
หากต้องการเพิ่มเว็บไซต์ของคุณใน Cloudflare หากคุณซื้อโดเมนจากที่อื่นแล้ว ให้เลือก "เพิ่มเว็บไซต์" และเปลี่ยน DNS เป็น nameserver ของ Cloudflare เช่น danica.ns.cloudflare.com ระบบจะแสดงคำแนะนำโดยละเอียดเกี่ยวกับวิธีการทำแต่ละขั้นตอน


หลังจากเพิ่มเว็บไซต์แล้ว ให้เพิ่มระเบียน DNS ด้วย
เลือก CNAME เป็นประเภท ป้อนชื่อซับโดเมนที่คุณต้องการ (เช่น oss) และป้อนโดเมนที่คุณเพิ่งได้รับจาก Backblaze เป็นเป้าหมาย (เช่น f005.backblazeb2.com) อย่าลืมเปิดใช้งานไอคอนรูปเมฆสีส้มสำหรับสถานะพร็อกซี ซึ่งจำเป็นสำหรับการใช้งาน CDN ของ Cloudflare

ในขั้นตอนนี้ คุณสามารถเข้าถึงรูปภาพผ่านโดเมนของคุณเองได้ดังนี้:
https:// oss.xxx .com/file/bucket-name/xxxxx.jpg
มันดูดีกว่าชื่อโดเมนแบบสุ่มเดิมมาก แต่ก็ยังไม่ดีพอ เพราะ URL ยังคงมีสตริง "/file/bucket-name/" ซึ่งทั้งดูไม่สวยงามและเปิดเผยโครงสร้างของ bucket ของคุณ ทำให้รู้สึกไม่ปลอดภัย
เขียนเส้นทาง URL ใหม่
ไปที่ส่วนหลังบ้านของ Cloudflare คลิกที่ Rules จากนั้นคลิก Overview แล้วคลิก URL Rewrite Rules และสร้างกฎใหม่

คุณสามารถตั้งชื่อกฎอะไรก็ได้ เลือก "ไม่รวม" สำหรับ URL ของคำขอ แล้วกรอก /file/ ลงไป ซึ่งหมายความว่าเฉพาะคำขอที่ไม่รวมพาธ /file/ เท่านั้นที่จะได้รับการประมวลผล
อย่างไรก็ตาม หากคุณต้องการให้กฎมีความแม่นยำมากขึ้น คุณสามารถจับคู่กับโดเมนย่อยนั้นได้โดยตรง

กรอกข้อมูลในช่องสุดท้ายด้วย:
concat(/file/桶名, http.request.uri.path)
จากนั้นจึงทำการติดตั้งใช้งาน
หลังจากนั้น ผลลัพธ์การเข้าถึงจะเป็นดังนี้:
https:// oss.xxx.com/ xxxxx.jpg
มันสะอาดหมดจด ไม่มีอะไรที่ไม่จำเป็นเลย
รู้สึกดีจัง
ลบส่วนหัวการตอบกลับที่ไม่จำเป็นออก
ขั้นตอนนี้เป็นขั้นตอนเสริม แต่ผมแนะนำให้คุณทำ
ส่วนหัวการตอบกลับของ Backblaze ประกอบด้วยข้อมูลจำนวนมากที่ขึ้นต้นด้วย "x-bz-" เช่น "x-bz-file-id", "x-bz-file-name" และ "x-bz-content-sha1" ข้อมูลเหล่านี้แสดงรายละเอียดการจัดเก็บไฟล์ของคุณ ซึ่งไม่จำเป็นต้องแสดงให้ผู้ใช้เห็น
ขั้นตอนการดำเนินการคล้ายกับที่ผ่านมา ในส่วนของกฎ ให้เลือก "กฎการแปลงส่วนหัวการตอบกลับ" และสร้างกฎใหม่

กำหนดค่าการลบส่วนหัวเหล่านี้:
x-bz-content-sha1 x-bz-file-id x-bz-file-name x-bz-info-src_last_modified_millis x-bz-upload-timestamp
ผมคิดว่ายังไม่มีใครเคยเห็น x-bz-info-src_last_modified_millis อยู่ในรายการมาก่อน แต่ในคู่มืออย่างเป็นทางการมีการกล่าวถึง ดังนั้นผมจึงเพิ่มเข้าไปด้วย อย่างไรก็ตาม การเพิ่มเข้าไปก็ไม่เสียหายอะไร
นอกจากนี้ยังมีกฎอีกข้อหนึ่งที่สำคัญมากเช่นกัน
เพิ่มประสิทธิภาพการแคชข้อมูล บน Cloudflare คุณสามารถตั้งค่ากฎส่วนหัวการตอบกลับเพื่อรวมค่า ETag เข้ากับส่วนหัวการตอบกลับที่ส่งกลับมาจาก Backblaze ได้
concat(http.response.headers[x-bz-content-sha1][0], http.response.headers[x-bz-info-src_last_modified_millis][0], http.response.headers[x-bz-file-id][0])
หลังจากตั้งค่าเสร็จแล้ว ให้กลับไปตรวจสอบส่วนหัวการตอบสนองของรูปภาพ ส่วนหัวทั้งหมดที่ขึ้นต้นด้วย "x-bz" จะหายไป และคุณจะเห็นค่า ETag แทน
สะอาดและมีประสิทธิภาพ
กำหนดค่ากฎการแคช
เพิ่มกฎเพจบน Cloudflare ป้อนชื่อโดเมนที่คุณแก้ไขแล้วบวกกับ /* ใน URL เลือก "แคชทั้งหมด" สำหรับระดับการแคช และตั้งค่า TTL ของแคชขอบเป็นหนึ่งเดือน
นอกจากนี้เรายังต้องตั้งค่า Backblaze ด้วย ในการตั้งค่าบัคเก็ต ให้เพิ่มบรรทัดต่อไปนี้ลงในข้อมูลบัคเก็ต:
{"cache-control":"max-age=720000"}คุณสามารถปรับเวลาได้ตามต้องการ หน่วยเป็นวินาที 720000 วินาทีประมาณ 8 วัน ซึ่งน่าจะเพียงพอ

เมื่อคุณเข้าถึงรูปภาพของคุณอีกครั้ง คุณจะเห็นข้อความต่อไปนี้ในส่วนหัวของการตอบกลับ:
การควบคุมแคช: อายุสูงสุด = 720000
สถานะแคช cf: สำเร็จ
คุณเห็นคำว่า HIT ไหม? นั่นหมายความว่าแคชทำงานได้แล้ว
คุณไม่จำเป็นต้องดึงทรัพยากรจาก Backblaze ทุกครั้ง เพราะ CDN จะส่งทรัพยากรเหล่านั้นให้คุณโดยตรง ซึ่งรวดเร็วและช่วยประหยัดโควต้าฟรีของ Backblaze ด้วย
พูดถึงเรื่องนี้แล้ว แม้ว่า Backblaze จะให้โควต้าฟรีรายวัน แต่ก็ไม่มากนัก พื้นที่เก็บข้อมูล 10GB และปริมาณการดาวน์โหลด 1GB ต่อวันนั้นมากเกินพอหากคุณแค่กำลังอัปโหลดรูปภาพสำหรับบล็อก แต่ถ้าคุณกำลังอัปโหลดวิดีโอหรือไฟล์ขนาดใหญ่ แนะนำให้ใช้แคชของ Cloudflare ให้คุ้มค่าและหลีกเลี่ยงการเชื่อมต่อโดยตรงกับเซิร์ฟเวอร์ต้นทาง
ใช้งานร่วมกับโปรแกรม PicGo client
การเลือกใช้เครื่องมือแสดงภาพข้อมูลฝั่งไคลเอ็นต์นั้นขึ้นอยู่กับคุณ มีตัวเลือกอื่นๆ เช่น ipic แต่ส่วนนี้จะเน้นที่ PicGo เป็นหลัก
เพียงค้นหา PicGo บน GitHub ค้นหาหน้าเวอร์ชันที่เผยแพร่ และดาวน์โหลดเวอร์ชันที่ตรงกัน
หลังจากติดตั้งเสร็จแล้ว คุณต้องติดตั้งปลั๊กอิน S3 เนื่องจาก Backblaze B2 สามารถใช้งานร่วมกับ API ของ S3 ได้

จากนั้นไปที่ Backblaze และสร้าง Application Key ในหน้า App Keys ให้คลิก Add Application Key และเลือกสิทธิ์ในการอ่านและเขียน


หลังจากได้รับ Key ID และ Application Key แล้ว ให้กรอกข้อมูลเหล่านั้นลงในปลั๊กอิน S3 ของ PicGo
มีข้อควรระวังอยู่อย่างหนึ่งตรงนี้
บทช่วยสอนออนไลน์หลายแห่งใช้รูปแบบ s3.us-west-xxx.backblazeb2.com สำหรับเอนด์พอยต์ แต่ถ้าคุณใช้โดเมนแบบกำหนดเองที่เชื่อมโยงกับ Cloudflare เหมือนกับผม คุณต้องป้อนโดเมนแบบกำหนดเองของคุณเอง ป้อน https://oss.xxx.com ในช่องโหนด แล้วป้อนชื่อบัคเก็ตที่คุณเพิ่งสร้างสำหรับบัคเก็ตนั้น


หลังจากจับคู่เสร็จแล้ว ให้บันทึกไฟล์ จากนั้นอัปโหลดภาพทดสอบ
ถ้าสามารถอัปโหลดและเข้าถึงได้ผ่านโดเมนที่กำหนดเอง ก็ถือว่าดีแล้ว
ดูวิธีการใช้งาน
หากคุณต้องการตรวจสอบการใช้งาน Backblaze B2 คุณสามารถดูได้ในหน้าบัญชีของฉัน (My Account) ในส่วนหลังบ้านของ Backblaze พื้นที่จัดเก็บข้อมูลรายวัน จำนวนการดาวน์โหลด และจำนวนคำขอ B2 จะแสดงไว้อย่างชัดเจน ทำให้คุณตรวจสอบได้ง่ายว่าคุณใช้งานเกินขีดจำกัดหรือไม่

ที่จริงแล้ว การติดตั้งระบบทั้งหมดนี้ไม่ได้ยากเป็นพิเศษ แต่ก็ไม่ง่ายเช่นกัน เราเจอปัญหาอุปสรรคอยู่บ้าง ส่วนที่น่ารำคาญที่สุดคือรายละเอียดต่างๆ การขาดไปแม้แต่อย่างเดียวก็อาจทำให้เข้าถึงไม่ได้ โหลดช้า หรือข้อมูลรั่วไหลได้
สิ่งที่ผมได้เรียนรู้มากที่สุดหลังจากติดตั้งระบบนี้ก็คือ โซลูชันนี้เหมาะอย่างยิ่งสำหรับเจ้าของเว็บไซต์ส่วนตัวหรือบล็อกขนาดเล็ก มันราคาถูก รวดเร็ว และเมื่อตั้งค่าเสร็จแล้ว คุณแทบไม่ต้องทำอะไรเลย—เป็นโซลูชันแบบครั้งเดียวใช้ได้ตลอดชีวิต
ยิ่งไปกว่านั้น การใช้ Backblaze ร่วมกับ Cloudflare จะทำให้ผู้เข้าชมเห็นโดเมนที่กำหนดเองของคุณ ส่วนหัวการตอบกลับสะอาดตา และมีการเร่งความเร็ว CDN ทำให้ประสบการณ์การใช้งานดีเทียบเท่ากับบริการโฮสติ้งรูปภาพแบบเสียเงินเลยทีเดียว
พูดตามตรง ในยุคที่ทุกอย่างคิดค่าบริการตามการใช้งาน การหาแพ็กเกจที่แทบจะฟรีแบบนี้ถือว่ายอดเยี่ยมมาก
สุดท้ายนี้ ผมอยากจะบอกว่า ถ้าคุณกำลังประสบปัญหาเกี่ยวกับการโฮสต์รูปภาพอยู่เช่นกัน ผมหวังว่าบทความนี้จะช่วยคุณประหยัดเวลาช่วงบ่ายในการลองผิดลองถูกได้
เนื่องจากคุณอ่านมาถึงตรงนี้แล้ว ถ้าคุณคิดว่ามีประโยชน์ โปรดกดไลค์และแชร์ด้วยนะคะ ถ้าอยากรับข่าวสารอัปเดตก่อนใคร สามารถติดตามฉันได้เลยค่ะ ⭐
ขอบคุณที่อ่านบทความของฉัน แล้วพบกันใหม่ครั้งหน้า
หวัง Chen Weiliang บล็อก ( https://www.chenweiliang.com/ บทความ "การผูกโดเมนที่กำหนดเองของ Cloudflare กับ Backblaze B2 (เพื่อให้ได้ปริมาณการใช้งานฟรี 100%)" ที่แชร์ไว้ที่นี่ อาจเป็นประโยชน์สำหรับคุณ
ยินดีต้อนรับสู่การแบ่งปันลิงค์ของบทความนี้:https://www.chenweiliang.com/cwl-34303.html
