มีสมาชิกถามเข้ามาเป็นจำนวนมากผมเลยถือโอกาสเขียนเป็น Knowledge Base เลยแล้วกันครับ ปัญหาที่หลายๆคนพบเจอคือได้ทำการเช่า Hosting แต่ยังไม่มั่นใจว่า Script ที่ย้ายมาจะใช้งานได้ปกติหรือเปล่า หรือ เช่า Hosting ก่อนแต่ยังไม่ได้จดโดเมน
ทำไมเช่า Host แล้วเข้าด้วย IP ตรงๆแล้วหน้าเวปไม่แสดง ?
เราจะเข้าด้วย http://ip/folder มันทำไม่ได้ครับ เนื่องจาก Web Server ก็จะมีการทำ virtual server ซึ่งจะทำการ mapping กับ ชื่อ Domain ไว้จึงทำให้เรียกผ่าน IP ตรงๆมันก็จะวิ่งไปที่ default directory ที่ทางผู้ให้บริการได้ตั้งค่าไว้ เช่น /var/www/html แล้วทีนี้ข้อมูลเวปไซต์ของลูกค้าอาจจะอยู่ที่ /home/user/domains/domain.com/public_html/folder จึงทำให้ web server ไปเรียกไฟล์คนละที่กัน เป็นสาเหตุว่าทำไมมันถึงเรียกผ่าน IP ตรงๆไม่ได้
วิธีแก้ปัญหา
ในเมื่อเรายังไม่มี Domain เราก็สามารถ fixe static ในเครื่องของเราได้เลยครับ (จะมีผลเฉพาะเครื่องที่มีการแก้เท่านั้น คนอื่นก็จะยังเข้าไม่ได้ ถ้าอยากเข้าได้ต้อง จดโดเมน เพื่อให้เป็นสาธารณะครับ) 1 ให้แก้ไขไฟล์ hosts โดยสิ่งที่เราต้องรู้คือ ชื่อ Domain กับ IP ของเครื่องเว็บเซิฟเวอร์ ส่วนใหญ่ผู้ให้บริการ Hosting จะส่งไปให้ในรายละเอียดการใช้งานอยู่แล้วครับข้อมูลส่วนนี้แต่ละ OS จะเก็บไฟล์ไว้คนละที่กัน
Window –> C:\Windows\System32\drivers\etc\hosts
Linux –> /etc/hosts
Mac OSX –> /private/etc/hostsโดยสมมติว่าโดเมนผมคือ google.com และเซิฟเวอร์ของผมคือ 12.34.5.6 ให้เพิ่มบรรทัดนี้ไปไว้ในไฟล์
12.34.5.6 www.google.com google.com
ตัวอย่างดังนี้
หลังจากนั้นให้ทำการ ping domain เพื่อทดสอบครับ (จากตัวอย่างถ้า google เป็น ip 12.34.5.6 ก็เป็นอันใช้ได้ครับ)
หลังจากที่ Domain ถูกชี้ไปที่ Web Server ที่ต้องการแล้วก็สามารถเข้าใช้งานผ่าน Web Browser ได้เลยครับ