- เครื่องมือสำหรับให้นักพัฒนาจัดการ นามแฝงสำหรับเซิร์ฟเวอร์พัฒนาในเครื่อง ที่ใช้งานสะดวก โดยวางเซิร์ฟเวอร์พัฒนาโลคัลไว้หลัง TLS proxy
- รองรับการรีไดเรกต์
https://server.test → http://localhost:3000 ได้ทั้งในเบราว์เซอร์และบรรทัดคำสั่ง
- ใช้งาน URL แบบ HTTPS ที่ไม่มีพอร์ต ได้ทั้งจากเบราว์เซอร์และ CLI
- สร้างสภาพแวดล้อมด้าน ความปลอดภัย·คุกกี้·CORS ที่ใกล้เคียงโปรดักชันได้ด้วย การออกใบรับรอง TLS อัตโนมัติ และ การอัปเดต /etc/hosts
- รองรับ การตั้งค่า YAML ที่แชร์ร่วมกันได้ และ การรันแบบ foreground·daemon mode ทำให้ทั้งทีมใช้ชุดนามแฝงเดียวกันและ สะท้อนการเปลี่ยนแปลงไปยังพร็อกซีได้ทันที
- ภายในใช้ Caddy เพื่อจัดการ HTTP→HTTPS proxy และการประกาศ mDNS(.local) จึงเข้าถึงได้จาก อุปกรณ์อื่นในเครือข่ายเดียวกัน (เช่น สมาร์ตโฟน)
- ทำงานได้บน MacOS, Linux และ WSL2
- ข้อดีเมื่อเทียบกับ hotel/chalet
- ทำงานเป็น ไบนารีเดี่ยว จึง ไม่ต้องพึ่งพา NodeJS
- ไม่ต้องตั้งค่า system proxy, และใช้ ไฟล์โฮสต์เป็นฐาน จึงให้ ความสอดคล้องระหว่างเบราว์เซอร์·CLI
- รองรับ หลาย TLD และมี การเซ็น TLS อัตโนมัติ เพื่อมอบสภาพแวดล้อม HTTPS ที่ไม่มีคำเตือน
- มี การตั้งค่าค้นหารีโพอัตโนมัติ ทำให้แชร์กันในทีมได้ง่าย และ การจัดการโปรเซสใช้หลักการไม่ก้าวก่าย จึงยืดหยุ่น
- กรณีใช้งานหลัก
- เปิดให้เข้าถึง ฟรอนต์เอนด์/แบ็กเอนด์ แยกกันที่
https://app.test, https://api.test เพื่อสร้าง สแตกโลคัลแบบบูรณาการ สำหรับตรวจสอบ Secure Cookie·SameSite·CORS ได้เหมือนใช้งานจริง
- ในการทดสอบบน อุปกรณ์มือถือจริง สามารถใช้โดเมน
.local เพื่อทำให้ การเข้าถึงจากอุปกรณ์ในเครือข่ายเดียวกัน ง่ายขึ้น และตรวจสอบ responsive·PWA·ขั้นตอนการล็อกอิน
- ระหว่างการ onboarding ทีม สามารถแชร์ โดเมนคงที่ แทนการต้องจำ ตัวแปรสภาพแวดล้อม·พอร์ต เพื่อทำให้ ประสบการณ์การพัฒนามีมาตรฐานเดียวกัน
1 ความคิดเห็น
ดูเหมือนจะเป็นแค่ wrapper ของ Caddy แบบเรียบง่าย แต่ตอนนี้ผมยังไม่ค่อยเห็นความจำเป็นที่จะต้องใช้แทนครับ