การติดตั้งและปรับแต่ง Apache Web Server บน Fedora Core 6

Apache เป็นเว็บเซิร์ฟเวอร์ที่ได้รับความนิยมสูงสุดในปัจจุบัน ( 53.76% , June 2007 , From Netcraft ) โดยใน RedHat และ Fedora ลินุกซ์ จะมีซอฟต์แวร์มาให้อยู่แล้วในแผ่นติดตั้ง ซึ่งจะเป็นไฟล์แบบ RPM โดยจะเป็นเวอร์ชัน 2.2

การติดตั้ง Apache Web Server 2.2 บน Fedora Core 6 Linux
ขั้นตอนที่ 1.

 

เนื่องจากเราได้เลือกการติดตั้ง Fedora Core 6 เป็นแบบ Web Server จึงทำให้ระบบทำการติดตั้ง Apache 2.2 ให้เรียบร้อยแล้ว จะขาดก็เพียงแต่ซอฟต์แวร์เสริมอื่นๆ เท่านั้น โดยปกติแล้วชื่อซอฟต์แวร์ของ Apache Web Server บน Fedora Linux จะใช้ชื่อว่า httpd ซึ่งวิธีการตรวจสอบว่าซอฟต์แวร์ได้ติดตั้งไปแล้วหรือไม่ สามารถทำได้ดังนี้

[root@web ~]# rpm -qa |grep httpd
httpd-manual-2.2.3-5
httpd-2.2.3-5

แสดงว่ามีการติดตั้งเรียบร้อยแล้ว ซึ่งเป็นเวอร์ชั่น httpd-2.2.3-5

ขั้นตอนที่ 2.

ถัดมาตรวจสอบว่า apache สามารถทำงานได้ปกติ ใช้สคริปต์ httpd ที่อยู่ในไดเรคเทอรี /etc/init.d โดยสั่งงานให้ Apache ซึ่งมีเซอร์วิสเป็น httpd ทำการ start , stop , restart ดังนี้

[root@web ~]# /etc/init.d/httpd start
[root@web ~]# /etc/init.d/httpd stop
[root@web ~]# /etc/init.d/httpd restart

ขั้นตอนที่3.

จากนั้นเปิดเว็บบราวเซอร์ Mozilla Firefox แล้วเรียกไปยังหมายเลขไอพีของเครื่องเว็บเซิร์ฟเวอร์ หรือจะใช้เป็น localhost ก็ได้ ตัวอย่างเช่น เรียกไปที่ http://localhost หรือ http://192.168.9.1 เราจะเห็นหน้าแรกของเว็บเซิร์ฟเวอร์เราเป็น Fedora Core Test Page ดังรูป ซึ่งเป็นหน้าเริ่มต้นเพื่อแสดงว่า เว็บเซิร์ฟเวอร์สามารถทำงานได้ปกติ

ขั้นตอนการปรับแต่ง Apache Web Server 2.2
ในการปรับแต่ง Apache จะใช้ไฟล์คอนฟิกกูเรชั่นหลักคือ /etc/httpd/conf/httpd.conf ซึ่งหลังจากปรับแต่งเรียบร้อยแล้ว ต้องรีสตาร์ท Apache ก่อน การปรับแต่งถึงจะมีผลต่อการทำงาน เราจะมาดูส่วนต่างๆ ดังนี้

ServerAdmin กำหนดอีเมลล์แอดเดรสสำหรับผู้ดูแลระบบ
ServerName ใช้ในการกำหนดชื่อของเครื่องเว็บเซิร์ฟเวอร์ ในที่นี้ให้แก้ไขเป็น localhost ดังนี้

จาก
#ServerName www.example.com:80
เป็น
ServerName localhost:80

DocumentRoot เป็นส่วนที่ใช้ระบุสถานที่เก็บไฟล์ของเว็บเพ็จ ซึ่งโดยปกติแล้วจะอยู่ที่ /var/www/html
DirectoryIndex เป็นส่วนที่ใช้ในการกำหนดให้เว็บเซิร์ฟเวอร์อ่านข้อมูลไฟล์นั้นขึ้นมาแสดงผล ถ้าเจอไฟล์เหล่านี้ในไดเรคเทอรี ซึ่งมีค่ามาตรฐานเป็น index.html index.html.var ซึ่งในบางครั้ง เราสามารถกำหนดให้เป็นไฟล์อื่นๆ ได้ หรือมีนามสกุลอื่นๆ ได้ เช่น index.htm , main.html , index.php เป็นต้น

ทดสอบการทำงานของเว็บเซิร์ฟเวอร์

ในขั้นตอนนี้จะทดสอบว่าเว็บเซิร์ฟเวอร์ของเรา สามารถทำงานได้ แต่ยังไม่รองรับภาษา PHP และ ฐานข้อมูล MySQL ครับ ซึ่งจะมีการติดตั้งและปรับแต่งในภายหลัง โดยวิธีการทดสอบมีดังนี้

  1. ทำการสร้างไฟล์ index.html ภายใต้ไดเรคเทอรี /var/www/html โดยเนื้อหาในไฟล์เป็นอะไรก็ได้ ในที่นี้สามารถใช้โปรแกรม nano , vi สร้างไฟล์ ดังนี้

    [root@web ~]# nano /var/www/html/index.html

    พิมพ์ข้อความใดๆ ลงไปในไฟล์ index.html และทำการบันทึกไฟล์ โดยการกดปุ่ม Ctrl + o และถ้าต้องการออกจากโปรแกรม nano ให้กดปุ่ม Ctrl + x

  2. หลังจากที่ทำการสร้างไฟล์ index.html เสร็จเรียบร้อยแล้ว ให้เปิดเว็บบราวเซอร์แล้วเรียกไปยัง http://localhost/index.html จะเห็นหน้าเว็บไซต์ที่เราสร้างขึ้นมาดังนี้
  3. กำหนดให้ Apache ทำงานทุกครั้งเมื่อเริ่มต้นระบบ ดังนี้

    [root@web~]# chkconfig httpd on

ช่วยหน่อยนะครับ

ผมใช้ Fedora 7 แล้วมีปัญหากับ web server

1. ผมได้ทำการตรวจสอบดูว่ามี httpd .ver อะไร ตอนแรกผม log in เข้ามาอีก user นึง ที่ไม่ใช่ root ก็ตรวจสอบได้ว่าใช้ .ver อะไร ต่อมาทำการ start ตามขั้นตอนข้างบนแล้ว มันบอกว่า fail เพราะว่า Syntax error line 280 of /etc/httpd/conf/httpd.conf: Document must be directory แบบเนี่ยครับ
2. ผมเลยลองเข้าเป็น root แต่พอจะตรวจสอบว่าใช้ .ver อะไร มันก็ไม่ขึ้นข้อความอะไรเลยครับ และพอ start ก็ fail ในลักษณะเดียวกันเลย

ไม่ทราบว่าผมควรทำอย่างไรบ้างครับ....ขอบคุณครับ....

ปล. แนะนำการลง php ให้ด้วยนะครับ งง กับพวก directory อยู่เลย