วันนี้จะมาแนะนำเว็บนี้ครับ เป็นเว็บง่ายๆ แต่ดีมากสำหรับ Developer เลย โดยเฉพาะกลุ่มสาย Vagrant ควรใช้มาก
โจทย์คือ ถ้าคุณใช้ Vagrant หรือ VM หรือเครื่อง staging ที่อยู่ใน nat lan แล้วคุณอยากเทสเว็บของคุณบนอุปกรณ์หรือเครื่องอื่นๆ ที่ไม่ใช่เครื่องคุณ แน่นอนว่าทุกคนต้องมาแก้ host file ตามระบุ ip ให้ถูก แต่ถ้าเป็นมือถือล่ะ ให้แก้ host ไฟล์ก็คงเป็นเรื่องตลกเลย บางคนบอกงั้นระบุลง dns server ไปเลย แต่ถามโปรเจ็คมันทำไม่นาน จะเขียนลงไปดีจริงเหรอ
เว็บนี้ทางออกครับ หลักการง่ายๆ คือถ้าเข้าแบบ subdomain
10.0.0.1.xip.io resolves to 10.0.0.1 www.10.0.0.1.xip.io resolves to 10.0.0.1 mysite.10.0.0.1.xip.io resolves to 10.0.0.1 foo.bar.10.0.0.1.xip.io resolves to 10.0.0.1
มันจะ resolve dns ให้เป็นเลข ip ตามซัพโดเมนเลย ดังนั้นด้วยเว็บนี้ การแก้ไขไฟล์ host ก็ไม่จำเป็นอีกต่อไปเลย นอกนั้นถ้าใครใช้ apache + mod vhost alias คุณสามารถเขียนอะไรคล้ายแบบนี้ (อันนี้คือตัวอย่างที่ผมใช้จริงในปัจจุบัน)
<VirtualHost *:80> ServerAlias *.*.*.*.*.*.xip.io VirtualDocumentRoot /var/www/%2/%1 </VirtualHost> <VirtualHost *:80> ServerAlias *.*.*.*.*.xip.io VirtualDocumentRoot /var/www/%1/www </VirtualHost>
คุณจะสามารถทำ wildcard vhost แบบสบายเลย ไม่ต้องมาแก้ vhost เป็นครั้งที่สองเลยครับ ทดลองกันดูนะครับ
ปล. ข้อเสียอย่างเดียวคือ xip.io ต้องต่อเน็ตครับ
ปล2. Vagrant มี Vagrant share ครับ แต่หลายคนไม่รู้จัก แถมต้องสมัคร Vagrant cloud ถึงใช้ได้ด้วย นอกนั้นปัญหาคล้ายกันคือต้องมีเน็ตอยู่ดี xip.io จึงง่ายกว่า
ปล3. ผมไม่ใช้ Vagrant ครับ