1. ไปเพิ่มชื่อ host ลงใน Domain ของเรา ตามวิธีการของการติดตั้งและตั้งค่า Domain Name Server ข้างบน ดังตัวอย่างนี้จะใช้ชื่อ host ว่า "testdrive.aon-nok.com" ซึ่งจะเป็น CName ของ "ns1.aon-nok.com" จาก zone ไฟล์ตัวอย่างที่เพิ่มเข้าไป
หลังจากแก้ไขไฟล์นี้ และ save เสร็จเรียบร้อย ก็สั่ง reload โดเมนด้วยคำสั่ง$TTL 3600 ; 1 hour
aon-nok.com. IN SOA ns1.aon-nok.com. root.ns1.aon-nok.com. (
20070628 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ; Minimum
)
IN A 192.168.0.1
; ชื่อของ โดเมนเนม Server
IN NS ns1.aon-nok.com.
; ชื่อ host ของ mail exchang สำหรับ รับส่งเมล์
IN MX 10 mail.aon-nok.com.
; ชื่อ host ต่าง ๆ ภายใน Domain ของเราที่ต้องการ map กับ IP ใด ๆ
localhost IN A 127.0.0.1
ns1 IN A 192.168.0.2
mail IN A 192.168.0.3
mx IN A 192.168.0.4
; ชื่อเสมือน หรือ ชื่อปลอม
www IN CNAME ns1.aon-nok.com.
webboard IN CNAME ns1.aon-nok.com.
testdrive IN CNAME ns1.aon-nok.com
#rndc reload (คำสั่งสำหรับ โหลด zone ไฟล์ ใหม่ ดูรายละเอียดคำสั่ง rndc ด้วย man rndc)2. หลังจากเพิ่ม host ลงไปใน zone ไฟล์เรียบร้อยแล้ว เราก็จะมาแก้ไขค่า config ของ Apache กันสักเล็กน้อย อันดับแรก แก้ไขไฟล์ /usr/local/etc/apache22/httpd.conf
ค้นหาบรรทัด3. หลังจากนั้นก็ แก้ไขไฟล์ /usr/local/etc/apache22.extra/httpd-vhosts.conf ซึ่งจะมีค่านี้อยู่แล้ว
# Virtual hosts
#Include etc/apache22/extra/httpd-vhosts.conf
ให้ลบ # ออกจากบรรทัดที่ 2 เพื่อเปิดการใช้งาน Virtual Host ดังนี้
# Virtual hosts
Include etc/apache22/extra/httpd-vhosts.conf
เสร็จแล้วก็ Save
4. คำอธิบาย Virtual Host ชุดที่ 1 จะมีไว้สำหรับเป็น Default ของ เว็บไซต์ เช่นกรณีที เข้าผ่าน ip เว็บไซต์นี้ก็จะโชว์ แต่ถ้าเรียกด้วย testdrive.aon-nok.com ก็จะเข้าไปเรียกเว็บไซต์ที่ /usr/local/www/apache22/testdrive.aon-nok.com ตามที่เรากำหนดใน DocumentRoot ครับ อธิบายนิดนึง<VirtualHost *:80>ก็แก้ไขดังนี้
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /www/docs/dummy-host.example.com
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog /var/log/dummy-host.example.com-error_log
CustomLog /var/log/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot /www/docs/dummy-host2.example.com
ServerName dummy-host2.example.com
ErrorLog /var/log/dummy-host2.example.com-error_log
CustomLog /var/log/dummy-host2.example.com-access_log common
</VirtualHost><VirtualHost *:80>
ServerAdmin webmaster@aon-nok.com
DocumentRoot /usr/local/www/apache22/reserved.aon-nok.com
ServerName reserved.aon-nok.com
ErrorLog /var/log/reserved.aon-nok.com-error_log
CustomLog /var/log/reserved.aon-nok.com-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@aon-nok.com
DocumentRoot /usr/local/www/apache22/testdrive.aon-nok.com
ServerName testdrive.aon-nok.com
ErrorLog /var/log/testdrive.aon-nok.com-error_log
CustomLog /var/log/testdrive.aon-nok.com-access_log common
</VirtualHost>
ServerAdmin : กำหนด Email ของผู้เป็นเจ้าของ5. หลังจากนั้นก็ลอง Restart Apache ก็จะใช้งานได้ครับ
DocumentRoot : ต้องสร้าง Directory เพื่อเก็บไฟล์ของเว็บไซต์แล้วกำหนดไว้ที่นี่
ServerName : เป็นชื่อ Host ที่ต้องการ
ErrorLog : เลือกว่าจะเก็บไฟล์สถานะของการ error ไว้ที่ไหน
CustomLog : เลือกว่าจะเก็บไฟล์ access log ไว้ที่ไหน
หวังว่าคงเป็นแนวทางในการใช้งานไม่มากก็น้อยนะครับ
๓ ความคิดเห็น:
ติดตามตลอด
เพิ่มคุณภาพมาเรื่อยๆน่ะ
อ้อ ขอให้ระมัดระวัง ความถูกต้องทางวิชาการด้วยน่ะ
เยี่ยมครับ ได้ไอเดียทันควัน
ขอบคุณครับ ผมพยายามหา reference จาก เว็บต่างประเทศบ่อย ๆ แปลผิดแปรถูกก็ขออภัยด้วยครับ
แก้ที่ผิดนะครับ
3. หลังจากนั้นก็ แก้ไขไฟล์ /usr/local/etc/apache22.extra/httpd-vhosts.conf ซึ่งจะมีค่านี้อยู่แล้ว
เป็น /usr/local/etc/apache22/extra/httpd-vhosts.conf เพราะว่า . กับ / มันอยู่ใกล้กันเหลือเกิน
แสดงความคิดเห็น