Skip to content


สร้าง domain มาไว้ใน localhost ดีกว่า

รู้สึกเบื่อมั๊ยครับ เวลาทำเว็บแล้วต้องมาเทสด้วย URL แบบเดิม ๆ คือ http://localhost/work/myweb/ (ประมาณนี้) ยิ่งถ้าใครแบ่ง folder อย่างหรูหรา ก็ยิ่งไปกันใหญ่ http://localhost/work/2009/clients/sipa/task1/ (อู้วววว ใครจะไปจำได้วะ) วันนี้ผมมีทางออกให้สำหรับใครที่ยังไม่รู้ครับ

เดิมที เราอาจจะเบื่อแค่ domain ที่เป็นชื่อว่า localhost เราก็จะแก้ปัญหาวิธีนี้ด้วยการ map hosts file ให้เป็น www.domain.com ในเครื่องเรา ทีนี้แล้ว path ตามหลังยาว ๆ ล่ะ จะทำยังไงดี อยากพิมพ์แค่ www.domain.com เฉย ๆ ก็ใช้ได้เลย ปัญหานี้แก้ไ้ด้ไม่ยากครับ ผมจะยกตัวอย่างด้วยสภาพแวดล้อมที่ใช้ AppServ นะครับ

ขั้นตอนง่าย ๆ ก่อนอื่น เริ่มจากการแก้ hosts file ก่อนครับ

สำหรับคนที่ใช้ Windows ไฟล์ hosts จะอยู่ที่ C:\Windows\system32\drivers\etc\hosts นะครับ (Drive กับ Path ของ Windows อาจจะเปลี่ยนไป ขึ้นอยู่กับว่าคุณลง Windows อะไร และลงไว้ที่ไหนนะครับ)

ส่วนคนที่ใช้ Linux ไฟล์ hosts จะอยู่ที่ /etc/hosts ครับ

วิธีแก้ ก็ใช้ text editor ทั่ว ๆ ไปมาแก้ได้เลยครับ เช่น notepad (Windows) หรือ vi (Linux) เปิดมาแล้วก็เพิ่มบรรทัดนี้ลงไปครับ

127.0.0.1    www.domain.com

เสร็จแล้วก็ save ครับ เท่านี้ก็เรียบร้อย

วิธีทดสอบก็แค่เปิด Web Browser ขึ้นมาใหม่ แล้วก็ลองเข้าไปที่ www.domain.com ดูครับ มันควรจะพาไปหน้าเดียวกับ localhost ครับ

หลังจากนั้น เราก็ทำการแก้ไขไฟล์ httpd.conf ของ Apache ครับ

สำหรับคนที่ลง AppServ ใน Windows ไฟล์นี้จะอยู่ที่ C:\AppServ\Apache2.2\conf\httpd.conf (ขึ้นอยู่กับ Drive และ Path รวมถึง Apache version ที่เอามาลงด้วยครับว่าอยู่ที่ไหน) ส่วน Linux นั้น จะอยู่ที่ /usr/local/apache/conf/httpd.conf (อันนี้ก็เช่นกันครับ ขึ้นอยู่กับว่า เราลงไว้ที่ไหนครับ)

เสร็จแล้ว เปิดขึ้นมาด้วย text editor เหมือนเดิมครับ หาดูบรรทัดที่เขียนว่า

#Include conf/extra/httpd-vhosts.conf

เจอแล้วให้เอาเครื่องหมาย # หน้าบรรทัดออกครับ เสร็จแล้ว save ซักทีนึงครับ

หลังจากนั้น ให้เข้าไปที่ path conf/extra แล้วเปิดไฟล์ที่ชื่อ httpd-vhosts.conf ด้วย text editor แล้วพิมพ์ตามตัวอย่างด้านล่างนี้เลยครับ

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.x
# บรรทัดนี้ ใส่ Path ของงานเราครับ อยู่ที่ไหนก็ได้ ถ้าเป็น windows ให้เปลี่ยน \ เป็น / ด้วยนะครับ
    DocumentRoot "D:/work/domain.com/www"
# บรรทัดนี้ ใส่ชื่อ domain ครับ
    ServerName www.domain.com
# บรรทัดนี้ ใส่ชื่อ domain ครับ
    ServerAlias www.domain.com
# บรรทัดนี้ ระบุที่เก็บ error log ครับ
    ErrorLog "logs/www.domain.com-error.log"
# บรรทัดนี้ระบบ access log ครับ
    CustomLog "logs/www.domain.com-access.log" common
</VirtualHost>

เสร็จแล้ว ให้ Restart Apache รอบนึง เท่านี้ก็เรียบร้อยครับ ลองเปิด browser แล้วเข้าไปที่ www.domain.com อีกทีดูสิครับ แล้วดูความแตกต่างครับ

จากตัวอย่าง ลองเอาไฟล์ไปวางไว้ที่ D:\work\domain.com ดูครับ เช่น เราเอาไฟล์ index.html ไปวางไว้ที่ D:\work\domain.com เราก็ลองทดสอบด้วย URL http://www.domain.com/index.html ก็ได้ครับ

สำหรับคนที่ยังอยากใช้ localhost อยู่ ก็อย่าลืมทำสำหรับ localhost ด้วยนะครับ แค่เปลี่ยนจาก www.domain.com เป็น localhost เท่านั้นเองครับ

ทีนี้ เราก็ test งานของเราได้ง่าย ๆ ด้วย URL จริง ๆ จนหนำใจได้แล้วล่ะครับ

Share

Posted in Apache.

Tagged with , , , .


4 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. อภิสิทธิ์ says

    ลองทำตามทุกอย่างแล้ว แต่มันขึ้น
    You don’t have permission to access / on this server
    ช่วยแนะนำด้วย….
    10 มิ.ย. 52

  2. อภิสิทธิ์ says

    เข้าเว็บ http://www.appservnetwork.com/forum/index.php?topic=3523.0 ทำตามที่ฝรั่งเขาบอกได้แล้ว….
    ไงก็ขอบคุณมากเลยนะครับ…

  3. chonla says

    ดีใจด้วยครับ

  4. jOjOe says

    ขอยคุณครับ พี่

    มาลองเขียน php อีกกว่า น่าสนใจแหะ



Some HTML is OK

or, reply to this post via trackback.

*