วันจันทร์ที่ 30 ธันวาคม พ.ศ. 2556

การติดตั้ง Web Server

เว็บเซิร์ฟเวอร์ หมายถึง Application ที่ทำหน้าที่รับและประมวลผลเอกสารที่ถูกร้องขอจากผู้ใช้บริการทางอินเทอร์เน็ต ซึ่งเว็บเซิร์ฟเวอร์จะส่งเอกสารกลับไปแสดงผลให้ผู้ใช้บริการผ่านบราวเซอร์นอกจากเว็บเซิร์ฟเวอร์ จะถูกนำมาให้บริการในอินเทอร์เน็ตแล้วแต่อาจมีการประยุกต์ให้นำมาใช้กับเครือข่ายภายในองค์กรหรืออินเทอร์เน็ตได้เช่นกัน
โปรแกรมที่สามารถทำหน้าที่หรือให้บริการเว็บเซิร์ฟเวอร์บนระบบ FreeBSD มีหลายโปรแกรม ในบทความนี้ผมเลือกใช้ Apache เวอร์ชั่น 2.2.8 โดยมีการใช้งานร่วมกับ PHP เวอร์ชั่น 5.2.5 และ MySQL เวอร์ชั่น 5 ในส่วนของ Apache สามารถดาวน์โหลด Source Code ได้ที่ http://www.apache.org/ ขั้นตอนการติดตั้งมีรายละเอียด ดังต่อไปนี้
ขั้นตอนที่ 1 ติดตั้ง Apache
เข้าไปในตำแหน่งที่เราดาวน์โหลดโปรแกรม และทำการแตกไฟล์เพื่อติดตั้ง
# tar zvfx httpd-2.2.8.tar.gz
# cd httpd-2.2.8
# ./configure --prefix=/usr/local/apache --enable-so
# make all install clean
ขั้นตอนที่ 2 ติดตั้งภาษา Perl
ภาษา Perl เป็นภาษาที่สำคัญยิ่งต่อการติดตั้ง PHP หากไม่มีภาษา Perl จะไม่สามารถติดตั้ง PHP ได้ ขั้นตอนการติดตั้งภาษา Perl มีเทคนิคง่ายๆ ดังต่อไปนี้
# pkg_add -v -r perl
ขั้นตอนที่ 3 ติดตั้ง Ports Collection
# sysinstall

เลือกรายการ Distributions แล้วกด Enter

เลือก ports โดยการเลื่อนแถบแสงไปยังรายการดังภาพ แล้วกด Spacebar



ขั้นตอนที่ 4 ติดตั้ง PHP

เนื่องจาก PHP มีฟังก์ชัน รองรับการทำงานร่วมกับ XML ด้วย เราจึงต้องลง libxml2 สามารถติดตั้งทาง ports มีขั้นตอน ดังต่อไปนี้
# cd /usr/ports/textproc/libxml2 
# make all install clean
หากในระบบของเราต้องการใช้งานร่วมกับฟังก์ชันกราฟิก GD เราก็จะต้องติดตั้งด้วย เช่นเดียวกันหากมีฟังก์ชันหรือโมดูลอื่นๆ ที่เราต้องการใช้งานเราก็สามารถติดตั้งได้ตามต้องการ ติดตั้งทาง ports มีขั้นตอน ดังต่อไปนี้
# cd /usr/ports/graphics/gd
# make all install clean
เข้าไปในตำแหน่งที่เราดาวน์โหลดโปรแกรม (สามารถดาวน์โหลดได้ที่ http://www.php.net/downloads.php) และทำการแตกไฟล์เพื่อติดตั้ง
# tar zvfx php-5.3.8.tar.gz
# cd php-5.3.8
# ./configure --prefix=/usr/local/apache/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-zlib --with-gettext --with-gd --enable-mbstring --enable-sockets --enable-soap --disable-cgi
# make all install clean
หมายเหตุ --enable-mbstring มีการใช้งานใน PostfixAdmin จำเป็นต้อง enable ครับ ถ้าไม่ได้ใช้ก็ไม่ต้องใส่
หลังจากนั้นให้เพิ่ม AddType application/x-httpd-php .php ใน configuration ของ Apache ในไฟล์ httpd.conf อยู่ใน /usr/local/apache/conf/ เพื่อให้สามารถทำงานร่วมกับภาษา PHP ได้


ขั้นตอนที่ 5 ทดสอบการทำงานของเว็บเซิร์ฟเวอร์และปรับแต่งระบบ
# /usr/local/apache/bin/apachectl start  <-- สั่งให้ Apache ทำงาน
ถ้าแสดงข้อความ Error ประมาณนี้ No such file or directory: Failed to enable the 'httpready' Accept Filter ให้ใช้คำสั่งนี้
# kldload accf_http
# ee /boot/loader.conf   แล้วพิมพ์คำสั่ง   accf_http_load="YES"
หลังจากใช้คำสั่งนี้แล้ว ทดสอบโดยการเปิดหน้าเว็บบราวเซอร์ และพิมพ์ IP Address หรือ Domain ของเครื่องหากขึ้นข้อความ It works! แสดงว่าสามารถทำงานได้แล้ว
ถ้าเราต้องการกำหนดเอกสารหน้าแรก (Home page) ให้ทำงานด้วย index.php หรืออื่นๆ ตามที่เราต้องการสามารถปรับแก้ไขไฟล์ httpd.conf ซึ่งอยู่ใน /usr/local/apache/conf และค้นหาบรรทัดประมาณด้านล่างนี้ แล้วเพิ่ม index.php หรืออื่นๆ ตามต้องการ โดยจะต้องให้แต่ละชนิดคั่นด้วยเว้นวรรค
DirectoryIndex index.php index.html index.htm

ถ้าในกรณีที่เราต้องการใช้ภาษา PHP ด้านในของไฟล์ .html จะต้องเพิ่มคำสั่ง ดังต่อไปนี้
AddType application/x-httpd-php .php .htm .html
เมื่อแก้ไขไฟล์ Configuration เสร็จเรียบร้อยแล้ว ออกจาก Editor หากใช้ ee ให้ออกโดยกด Ctrl+C แล้วพิมพ์ exit

ทุกครั้งหลังจากที่เรามีการปรับแต่งระบบ เราจะต้องสั่งให้ Apache อ่านค่า Configuration ใหม่ โดยใช้คำสั่ง ดังต่อไปนี้
# /usr/local/apache/bin/apachectl restart  <-- สั่งให้ Apache อ่านค่า Configuration ใหม่ และทำงาน
หากต้องการให้ Apache หยุดทำงาน ใช้คำสั่ง
# /usr/local/apache/bin/apachectl stop


ขั้นตอนต่อไป เพิ่มคำสั่ง ดังต่อไปนี้ (สามารถพิมพ์ต่อจากคำสั่งด้านบนได้) โดยมีรายละเอียด ดังต่อไปนี้
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

ไม่มีความคิดเห็น:

แสดงความคิดเห็น