เดี๋ยวนี้ชีวิตการเขียนโค้ดของผมจะใช้ XAMPP เป็นหลัก และเปิด mod vhost ตลอด เรียกว่าถ้ามีการฟอร์แมตเครื่องลงวินโดวใหม่ สิ่งแรกที่จะต้องทำคือติดตั้ง XAMPP และเปิด mod vhost
สำหรับน้องใหม่ที่ไม่ทราบว่าการทำ vhost คืออะไร จงฟัง มันก็คือการทำให้การเรียกใช้โปรแกรมของเราที่เขียนขึ้นมาด้วยภาษา PHP เรียกด้วย URL สวยๆ ปกติแล้วเราจะสร้างโฟลเดอร์ขึ้นมาใน htdocs ใช่เปล่า แล้วเวลาเรียกโปรแกรมของเราเราก็พิมพ์ http://localhost/myfolder ใช่เปล่า ขึ้นต้นด้วย localhost เสมอ การทำ vhost คือการปรับแต่งตรงนี้แหละให้เราตั้งชื่อสวยๆให้มันได้ ไม่ต้องใช้แต่ localhost ยัน
แล้วมันมีประโยชน์อะไร ที่ควรค่าแก่การเสียเวลาไปนั่งทำมัน มีสิ
- URL มันมัดใจ อยากได้อะไร ตั้งได้ เอาให้สอดคล้องไปกับของจริงได้เลย ของจริงชื่อ pannipa.com ตอนพัฒนาในเครื่องก็ตั้งเป็น pannipa.dev
- ได้ฟิลลิ่งในการทำงาน localhost/bts กับ bts.dev พินาสิพินา อันไหนได้จะได้ฟิลลิ่งในการเดฟมากกว่ากัน
- หมดแล้ว เหี้ยจริง คิดได้แค่ 2 ข้อ
เออก่อนอื่นให้ท่านทำความเข้าใจตรงนี้ก่อนนะ ผมจะเขียนโปรแกรมตัวหนึ่งชื่อ bts สร้างโฟลเดอร์ชื่อ bts ไว้ในโฟลเดอร์ htdocs แล้ว ตั้งใจไว้ว่าอยากให้ URL มันชื่อว่า bts.dev
มาดูวิธีทำ ขอแบ่งแยกเป็น 3 เซ็กชั่น เพราะต้องแก้ 3 ไฟล์
– แก้ไฟล์ hosts
- เปิดไฟล์ C:\Windows\System32\drivers\etc\hosts ขึ้นมา ไฟล์ตัวนี้อาจจะถูกซ่อนไว้นะครับให้ท่านใช้วิธีพิมพ์พาธเพื่อเปิดโฟลเดอร์
- เพิ่มโค้ดด้านล่างต่อท้ายเข้าไปในไฟล์
- บันทึก ไอ้ไฟล์นี้มันจะมีระบบป้องกันอย่างหนึ่งนะครับ ปกติมันจะไม่ให้เปิดขึ้นมาแล้วแก้บันทึกกันโต้งๆ มันจะห้าม ให้ท่านก้อปปี้ไฟล์ออกมานอกโฟลเดอร์ แก้ไขให้เสร็จ บันทึกให้เรียบร้อย แล้วเอากลับไปใส่โฟลเดอร์ นี่คือหนึ่งวิธี หรือไม่งั้นท่านก็ต้องเปิดโปรแกรมที่จะใช้แก้ไขไฟล์ด้วยสิทธิ์ของ Administrator ก็ได้เหมือนกัน
– แก้ไฟล์ httpd.conf
- เปิดไฟล์ C:\xampp\apache\conf\httpd.conf ขึ้นมา
- หาคำว่า mod_vhost_alias.so ซึ่งมันควรจะอยู่บรรทัดที่ 175 เอาเครื่องหมาย # หน้าบรรทัดออก เพื่อเป็นการเปิดใช้งาน
- จากนั้นหาคำว่า conf/extra/httpd-vhosts.conf ซึ่งมันควรจะอยู่บรรทัดที่ 503 หากมีเครื่องหมาย # อยู่หน้าบรรทัด ให้เอาออกซะ เพราะมันต้องใช้คู่กับข้อสอง ข้อสองเป็นการบอกว่า เปิดใช้ mod ตัวนี้นะเว้ย ข้อสามเป็นตัวบอกว่าข้อกำหนดต่างๆมันถูกเก็บไว้ที่ไหน
– แก้ไขไฟล์ httpd-vhosts.conf
- เปิดไฟล์ C:\xampp\apache\conf\extra\httpd-vhosts.conf ขึ้นมา
- เพิ่มคำสั่งนี้ต่อท้ายไฟล์เข้าไป
*:80 : เป็นตัวบอกว่าถ้ามีการเรียกเข้ามาผ่านพอร์ต 80 ท่านเวลาท่านเข้าเว็บไซต์ใดๆแล้วท่านพิมพ์ว่า http นั่นแหละเบื้องหลังของมันมันเรียกใช้พอร์ต 80 *:443 : เรียกเข้ามาด้วย https DocumentRoot : โค้ดเก็บไว้ที่ไหน ServerName : URL อะไร ErrorLog : ที่เก็บ log CustomLog : ที่เก็บ log Directory : สำหรับโฟลเดอร์นี้ อนุญาติให้ทำอะไรกับมันได้บ้าง SSLEngine : เปิดใช้งาน SSL หรือไม่ มันจะเรียกเว็บขึ้นต้นด้วย https:// SSLCertificateFile : ไฟล์ cert ซึ่งจำเป็นต้องใช้ SSLCertificateKeyFile : ไฟล์ cert key จำเป็นต้องใช้
หลังจากที่ผมเซ็ตค่าอะไรต่างๆเรียบร้อยแล้ว
ผมลองพิมพ์ http://bts.dev ได้ผลกลับมาดังนี้
ผมลองพิมพ์ https://bts.dev/ ได้ผลกลับมาดังนี้
Leave a Reply