คำถามที่พบบ่อยเกี่ยวกับ ServBay
ระหว่างการใช้งานสภาพแวดล้อมพัฒนาเว็บในเครื่องด้วย ServBay นักพัฒนาอาจพบปัญหาต่างๆ เอกสารนี้จะตอบคำถามที่พบบ่อยสองข้อ ได้แก่ วิธีอัปเกรด ServBay Runtime และแนวทางแก้ไขเมื่อใช้เครื่องมือ Proxy อย่าง ClashX Pro แล้วไม่สามารถเข้าเว็บไซต์ท้องถิ่นใน ServBay ได้
วิธีอัปเกรด ServBay Runtime
ServBay Runtime ถือเป็นส่วนประกอบหลักของ ServBay ซึ่งจำเป็นต่อการคงไว้ซึ่งความเสถียรของระบบและบริการต่างๆ ที่อยู่ภายใต้ ServBay เมื่อมีเวอร์ชันใหม่ออกมา ServBay จะแจ้งเตือนให้อัปเกรดทันทีที่เปิดใช้งาน การอัปเดต Runtime อย่างสม่ำเสมอ จะช่วยเพิ่มประสิทธิภาพ เสถียรภาพ และความเข้ากันได้ของ ServBay
ขั้นตอนการอัปเกรด ServBay Runtime มีดังนี้
- เปิดแอป ServBay
- ที่แถบเมนูด้านซ้าย ให้เลือก แพ็กเกจซอฟต์แวร์ > บริการทั่วไป
- ในแผงด้านขวา ให้ค้นหารายการ ServBay Runtime
- หาก ServBay Runtime มีอัปเดตใหม่ จะแสดงปุ่มอัปเกรดสีเหลืองหรือแจ้งเตือนให้อัปเกรด ให้คลิกปุ่มอัปเกรดสีเหลืองนี้
- ServBay จะเริ่มดาวน์โหลดและติดตั้ง Runtime เวอร์ชันล่าสุด โปรดรอจนกระบวนการอัปเกรดเสร็จสมบูรณ์
เมื่ออัปเกรดเสร็จสิ้น ServBay Runtime จะทำงานด้วยเวอร์ชันล่าสุด ช่วยให้ระบบเสถียรและมีประสิทธิภาพมากขึ้น
ทำไมเข้าเว็บไซต์ท้องถิ่นใน ServBay ไม่ได้หลังจากใช้ ClashX Pro (หรือ proxy อื่นๆ) ?
นักพัฒนาหลายท่านใช้ ServBay ในการพัฒนาและทดสอบเว็บไซต์แบบ Local โดยมักตั้งค่าชื่อโดเมนภายใน (เช่น servbay.demo
, myproject.servbay.demo
เป็นต้น) ซึ่งโดยมากจะชี้ไปที่ IP วงใน 127.0.0.1
เมื่อคุณใช้เครื่องมืออย่าง ClashX Pro หรือ VPN/Proxy อื่นๆ (เช่น Surge, Quantumult X ฯลฯ) เครื่องมือเหล่านี้อาจมีการเปลี่ยนเส้นทางหรือดักจับคำร้องขอ DNS ทั้งหมด ให้ไปผ่านเซิร์ฟเวอร์ proxy ของตน โดยข้ามกระบวนการแปลชื่อโดเมนที่ macOS จัดการเอง รวมถึงข้อมูลจากไฟล์ hosts (ซึ่ง ServBay ใช้เพื่อกำหนดโดเมนในเครื่อง) ผลที่ตามมาคือ โดเมนพัฒนา Local ที่ตั้งค่าไว้ใน ServBay จะไม่สามารถชี้กลับมาที่เครื่องได้อย่างถูกต้อง ส่งผลให้ไม่สามารถเข้าถึงเว็บไซต์ท้องถิ่นของคุณ
แนวทางแก้ปัญหาคือ ตั้งค่ากฎในเครื่องมือ proxy ของคุณ เพื่อยกเว้น หรือไม่บังคับให้โดเมนพัฒนา Local เหล่านี้ผ่าน proxy และไม่เปลี่ยนเส้นทาง DNS ของโดเมนเหล่านั้น มักจะตั้งค่าได้ผ่านเมนูอย่าง “Bypass Proxy”, “Ignore Proxy”, “Whitelist” หรือ “Exclude List”
ยกตัวอย่าง ClashX Pro โปรดทำตามขั้นตอนต่อไปนี้
- เปิดแอป ClashX Pro
- ที่แถบเมนู macOS ให้คลิกไอคอน ClashX Pro และเลือก ตั้งค่าเพิ่มเติม
- ในหน้าต่างที่เปิดขึ้น ไปที่แท็บ ทั่วไป
- ค้นหาช่องอินพุตชื่อ ไม่ใช้ proxy สำหรับโฮสต์และโดเมนเหล่านี้ (หรือชื่อใกล้เคียง)
- เพิ่มโดเมนที่ใช้พัฒนา local ของคุณลงในรายการนี้ สำหรับผู้ใช้ ServBay แนะนำให้เพิ่ม
localhost
,127.0.0.1
และชื่อโดเมนหรือ wildcard ที่คุณใช้กับ ServBay เช่น หากใช้.servbay.demo
เป็น suffix ของโดเมน สามารถเพิ่ม*.servbay.demo
ได้ รายการโดเมนส่วนใหญ่มักคั่นด้วยเครื่องหมายจุลภาค,
หรือแยกบรรทัด ตัวอย่างการตั้งค่าที่มักใช้คือlocalhost, 127.0.0.1, *.servbay.demo, yourproject.servbay.demo
1 - กดบันทึกและดำเนินการตามคำแนะนำของ ClashX Pro อาจต้องรีโหลดหรือ apply config เพื่อให้มีผล
(ภาพตัวอย่าง: การตั้งค่าโดเมนและโฮสต์เพื่อยกเว้น proxy ใน ClashX Pro)
หลังตั้งค่าดังกล่าว ClashX Pro จะไม่ดักจับการแปลชื่อโดเมนภายในเหล่านี้อีกต่อไป เว็บไซต์ท้องถิ่นผ่าน ServBay จะสามารถเข้าถึงได้ตามปกติ หากยังมีปัญหาอยู่ โปรดตรวจสอบว่าคุณได้ตั้งค่าโดเมนที่ถูกต้องในเมนู เว็บไซต์ ของ ServBay แล้ว รวมทั้งตรวจสอบให้แน่ใจว่า Service ที่เกี่ยวข้อง (เช่น Caddy หรือ Nginx) กำลังทำงานอยู่ คุณสามารถตรวจสอบการแปลชื่อโดเมนด้วยคำสั่งบนเทอร์มินัล เช่น ping yourproject.servbay.demo
หรือ dig yourproject.servbay.demo
ได้เช่นกัน