Sunday, December 19, 2010

เริ่มต้นใช้งาน Webmin ตอนที่ 3 – Apache Web Server (httpd)

http://www.hellomafia.com/vps/%E0%B9%80%E0%B8%A3%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%95%E0%B9%89%E0%B8%99%E0%B9%83%E0%B8%8A%E0%B9%89%E0%B8%87%E0%B8%B2%E0%B8%99-webmin-%E0%B8%95%E0%B8%AD%E0%B8%99%E0%B8%97%E0%B8%B5%E0%B9%88-3-apache/



ขอกลับเข้าสู่การใช้งาน Webmin ต่อกันเลย โดยตอนนี้ จะพูดถึงโปรแกรมสำคัญที่สุดในการทำเว็บ นั่นคือ Apache Web Server ซึ่งเป็นโปรแกรม Web Server ยอดนิยมสำหรับชาว VPS เลยครับ
จริงๆยังมี Web Server อีกหลายตัว เช่น lighttpd ซึ่งอ้างว่ากินหน่วยความจำน้อยกว่า Apache และทำงานได้เร็วกว่า แต่จะใช้งานลำบาก หรือไม่คุ้นเคยกับคนหมู่มาก ถ้ามีปัญหาก็หาคนปรึกษาลำบาก ดังนั้น ถ้าไม่สุดทนกับ Apache หรือมี RAM น้อยมากๆ ผมแนะนำให้ใช้ Apache จะดีกว่าครับ

เข้าสู่เมนู Apache Web Server
จากหน้าจอของ Webmin ให้เลือกเมนูหลัก Server หาเมนูย่อยที่ชื่อ Apache Web Server ครับ ปกติจะอยู่อันแรกเลย คลิกเข้าไปได้เลย

เมนู Apache Web Server
เมื่อคลิกแล้ว จะพบรายชื่อของ Virtual Host (เว็บไซต์) ของเราทั้งหมด สำหรับคนที่เพิ่งลงใหม่ๆ ก็จะเห็นแต่ Default Server ครับ
หน้าหลักของ Apache Web Server
เปิด AllowOverride

ค่าที่ให้มาตั้งแต่แรกบางอย่าง อาจจะไม่เหมาะสมสำหรับการใช้งานบางประเภท เช่น ตั้ง AllowOverride เป็น None ตั้งแต่แรก ซึ่งทำให้สคริปต์บางตัวที่ใช้ .htaccess ในการกำหนดค่าบางอย่าง ใช้งานไม่ได้ หรือบางทีก็ไม่ได้เปิดการใช้งานแบบ Virtual Host มาให้ ทำให้เราใช้งานเว็บหลายๆเว็บในเครื่อง VPS เดียวกันไม่ได้ ดังนั้นจึงควรมาตั้งค่าพวกนี้ให้เรียบร้อยก่อนครับ
เริ่มด้วยการคลิกที่แท็บ Global configuration ดังรูป
แท็บ Global Configuration
หน้าจอจะแสดงไอคอนต่างๆดังรูป ให้คลิกที่ Edit Config Files
เมนู Edit Config File
จะเห็นว่ามีช่องให้แก้ไข Config File ด้วย ให้หาคำว่า AllowOverride ก่อนครับ
หา AllowOverride None
ให้สังเกต AllowOverride ที่มีคำอธิบายคล้ายๆในรูปนะครับ ถ้าเป็น AllowOverride ที่อื่น เราไม่จำเป็นต้องไปแก้ก็ได้
ถ้าตอนนี้เป็น AllowOverride None ให้เราเปลี่ยนคำว่า None เป็น All ตามรูปครับ
แก้เป็น AllowOverride All
เสร็จแล้วก็กดปุ่ม Save ไปเลยครับ เราจะแก้แค่นี้แหละครับ เพราะที่เหลือ สามารถแก้ผ่านเมนูต่างๆได้
เปิด NameVirtualHost
ต่อมาเราจะเปิดการใช้งาน Virtual Host กันนะครับ โดยให้คลิกที่แท็บ Global Configuration อีกครั้ง แต่คราวนี้เลือกเมนู Networking and Addresses ดังรูปครับ
เลือกเมนู Networking and Addresses
เมื่อคลิกเลือกเมนูแล้ว จะพบหน้าจอดังรูปครับ
หน้า Networking and Addresses
ที่หน้านี้ ให้เราสนใจเฉพาะหัวข้อดังนี้ครับ
  • Addresses for name virtual servers ให้เรากรอก *:80 ลงไป
  • Keep-alive timeout หมายถึง เวลา เป็นวินาที ที่จะตัดการเชื่อมต่อที่ค้างอยู่ ให้ติ๊กเลือกอันที่อยู่หน้าช่องกรอกข้อความ แล้วกรอกเลข 5 ลงไป
  • Request timeout หมายถึง เวลา เป็นวินาที ที่จะตัดการเชื่อมต่อที่ติดต่อเข้ามาแล้วยังไม่ได้ขอข้อมูลอะไร ให้ติ๊กเลือกอันที่อยู่หน้าช่องกรอกข้อความ แล้วกรอกเลข 5 ลงไป
เมื่อกรอกเสร็จแล้ว จะมีหน้าตาแบบนี้ครับ
เมื่อกรอกเสร็จแล้ว
เมื่อตรวจสอบเรียบร้อย ก็กดปุ่ม Save ได้เลยครับ
การสร้าง Virtual Host
โดยปกติแล้ว เรามักจะลงหลายๆเว็บไซต์ไว้ในเครื่องเดียว ดังนั้นเราจึงควรสร้าง Virtual Host สำหรับแต่ละเว็บไซต์ของเราครับ ถ้าคุณคิดจะมีแค่เว็บเดียวในเครื่องเดียว ก็อาจไม่ต้องทำขั้นตอนนี้ก็ได้ครับ แค่เอาไฟล์หน้าเว็บทั้งหมดวางไว้ใน /var/www/html แค่นั้นก็พอครับ
แต่สำหรับคนที่ต้องการสร้าง Virtual Host ให้ทำตามขั้นตอนดังนี้ครับ
คลิกที่แท็บด้านบน ที่ชื่อ Create virtual host เพื่อเข้าสู่หน้าการสร้าง Virtual Host ใหม่
แท็บ Create virtual host
เมื่อคลิกที่แท็บแล้ว จะพบหน้าดังนี้ครับ
หน้า Create virtual host
จะเห็นว่ามีอะไรให้กรอกมากมาย แต่ที่เราควรสนใจ มีดังนี้ครับ
  • Port คือ หมายเลขพอร์ตที่ virtual host นี้จะสนใจครับ ให้ติ๊กเลือกอันสุดท้าย ที่อยู่หน้ากล่องข้อความว่างๆ แล้วในกล่องข้อความว่างๆนั้น ให้ใส่เลข 80 (แปดสิบ) ลงไปครับ
  • Document Root คือ ตำแหน่ง root ของไฟล์เว็บไซต์ของเราครับ กรณีที่มีหลายเว็บไซต์ แนะนำให้เอาชื่อโดเมนและซับโดเมนเป็นชื่อ directory ด้วยนะครับ อย่างเว็บของผม ก็วางไว้ที่ /var/www/html/hellomafia.com/www โดยที่ hellomafia.com คือชื่อโดเมน ส่วน www จะเป็นซับโดเมนครับ เวลามีหลายเว็บจะได้หาเจอสะดวกๆ อย่าลืมว่าตำแหน่งไฟล์นี้จะต้องมีอยู่จริงนะครับ ไม่งั้นมันจะไม่ยอมให้สร้าง ดังนั้นควรจะไปสร้าง directory รอไว้ก่อนครับ
  • Server Name คือ ชื่อโฮสท์สำหรับเว็บไซต์ของเราแหละครับ อย่างของผม ก็จะเป็น www.hellomafia.com สำหรับคนที่ไม่ชอบให้เว็บมี www. นำหน้า ก็ใส่แค่ hellomafia.com ก็พอครับ
สำหรับค่าอื่นๆ เราไม่ต้องสนใจนะครับ สนใจแล้วจะปวดหัวเปล่าๆ ถ้ากรอกเสร็จแล้ว จะคล้ายๆอย่างนี้ครับ
ตรวจสอบว่ากรอกครบหรือยัง
ตรวจสอบดีๆ ว่ากรอกครบทั้ง 3 ค่าหรือยัง ถ้าเรียบร้อยแล้วก็กดปุ่ม Create Now ได้เลยครับ ถ้าไม่มีปัญหา จะกลับมายังหน้าแรก คือหน้าที่แสดงรายการ Virtual Host ทั้งหมด ซึ่งตอนนี้จะมี Virtual Host ที่เราเพิ่งสร้างอยู่ด้วย
สร้าง Virtual host เรียบร้อยแล้ว
เพิ่ม Alias ให้กับ Virtual Host
สำหรับบางคนที่กลัวว่า เว็บเราอาจจะมีคนเข้าโดยไม่ได้พิมพ์ www. นำหน้า หรืออยากจะให้เว็บของเรา เข้าได้จากหลายชื่อ ก็สามารถไปกำหนดเพิ่มใน Virtual host ดังนี้ครับ
ขั้นแรก ให้คลิกที่ Virtual Server ที่เราต้องการแก้ไข
คลิกที่ Virtual server ที่เราต้องการ
เมื่อคลิกแล้ว จะมีเมนูย่อยๆขึ้นมามากมายดังรูป ให้คลิกเลือกที่ Networking and Addresses ดังรูป
เลือกเมนูย่อย Networking and Addresses
เมื่อคลิกเลือกแล้ว จะเห็นหน้าตาดังรูป
เมนู Networking and Addresses
ให้เรากรอกชื่อ host ทั้งหมดที่ต้องการให้วิ่งมาที่เว็บตัวนี้ ไว้ในช่อง Alternate virtual server names ที่อยู่ด้านขวา
อย่างเว็บของผมปกติจะมีชื่อโฮสท์เป็น www.hellomafia.com แต่ผมต้องการให้คนที่พิมพ์แค่ hellomafia.com เข้าเว็บผมได้ด้วย ผมก็กรอก hellomafia.com ลงไปในช่องนี้ ดังรูป
กรอกชื่อโฮสท์ที่ต้องการลงไป
ถ้ามีชื่อโฮสท์หลายตัว ให้พิมพ์ลงไปให้หมดนะครับ อย่าลืมเว้นวรรคแยกระหว่างชื่อโฮสท์แต่ละตัวด้วยครับ เมื่อเสร็จแล้วก็กดปุ่ม Save ได้เลยครับ
สั่งให้ Apache เริ่มทำงานใหม่
เมื่อเราตั้งค่าต่างๆเรียบร้อยแล้ว ก็ควรจะเอาค่าเหล่านี้ไปใช้งานเสียที ให้มองที่มุมบนด้านขวา หาคำว่า Apply Changes ครับ ถ้าเจอก็กดเข้าไปเลยครับ เพื่อทำการ Restart Apache เพื่อให้เอาค่าต่างๆที่เรากำหนดไว้ ไปใช้งานครับ
คลิก Apply Changes
ลองเปิดเว็บดู
เมื่อตั้งค่าต่างๆเสร็จแล้ว และ Apply Changes เรียบร้อยแล้ว อย่าลืมลองไปเปิดเว็บดูนะครับว่าดูได้หรือเปล่า ถ้าได้หรือไม่ได้ยังไง ลองเขียน comment มาสอบถามกันได้ครับ ยินดีตอบคำถามครับ แต่อาจจะช้าหน่อยนะครับ เนื่องจากช่วงนี้งานยุ่งครับ สำหรับตอนหน้า ผมจะมาแนะนำวิธีการปรับค่าของ Apache ให้เหมาะสมกับเครื่องที่มีแรมน้อยๆ ซึ่งเหมาะสำหรับชาว VPS อย่างเราๆมากครับ

2 comments:

snowajang said...
This comment has been removed by the author.
snowajang said...

เรียกใช้โดยใช้ชื่อ ใหม่ที่ตั้งไว้แล้วเข้าไม่ได้เลยครับ แต่เข้าชื่อเดิมได้

Post a Comment

 
Design by GURU