หน้าแรก > คุย Linux, คุย...เว็บไซต์, คุย...Network, คุย..บริหารserver > มารู้จัก Apache2 และการติดตั้ง

มารู้จัก Apache2 และการติดตั้ง

เมื่อทำการติดตั้ง server  โดยใช้ ubuntu 11.04 ที่เรียกกันว่า Natty เป็นชื่อของเวอร์ชั่นนี้ เรียบร้อยแล้ว ก็มาเริ่มติดตั้งค่าตั้งๆ ตั้งแต่ network, dns และความปลอดภัย firewall ต่างๆ เรียบร้อยสมบูรณ์แล้ว ก็เริ่มมาติดตั้ง webserver กัน เริ่มตั้งแต่เลือกการติดตั้ง webserver apache2 โดยขั้นตอนก็เหมือนๆกับกันเวอร์ชั่นเก่าๆ คับผม แตกต่างนิดหน่อย

 

สำหรับการ Install Apache นั้นโดยปรกติแล้วตอนที่เราทำการ Install Linux จะมีการถาม ให้เราเลือกว่าจะลงหรือไม่สำหรับคนที่เลือกว่าไว้ตั้งแต่ตอน Install ก็ข้ามเรื่องนี้ ไปได้เลยแต่คนที่ไม่ได้เลือกไว้ หรือ ไม่ยังไม่รู้จักคุ้นเคยกับ Apache ซึ่งเป็น web server ชื่อดังก็ลองอ่านดูก่อนนะครับ

Apache คืออะไร
Apache คือ Project ที่ทำหน้าที่เป็น web server ที่มีผู้ใช้ทั่วโลกมากกว่า 60 % มีหน้าที่ในการจัดเก็บ Homepage และส่ง Homepage ไปยัง Browser ที่มีการเรียกเข้า ยัง Web server ที่เก็บ HomePage นั้นอยู่ซึ่งปัจจุบันจัดได้ว่าเป็น web server ที่มี ความน่าเชื่อถือมาก

ประวัติของ Apache

Apache พัฒนามาจาก HTTPD Web Server ที่มีกลุ่มผู้พัฒนาอยู่ก่อนแล้ว โดย ร็อบ แม็คคูล (Rob McCool) ที่ NCSA (National Center for Supercomputing Applications) มหาวิทยาลัยอิลลินอยส์ เออร์แบนา-แชมเปญจน์ สหรัฐอเมริกา แต่หลังจากที่ แม็คคูล ออกจาก NCS และหันไปให้ความสนใจกับโครงการอื่นๆ มากกว่าทำให้ HTTPD เว็บเซิร์ฟเวอร์ ถูกปล่อยทิ้งไม่มีผู้พัฒนาต่อ แต่เนื่องจากเป็นซอร์ฟแวร์ที่อยู่ภายใต้ลิขสิทธิ์ กนู คือ ทุกคนมีสิทธิ์ที่จะนำเอาซอร์สโค้ดไปพัฒนาต่อได้ ทำให้มีผู้ใช้กลุ่มหนึ่งได้พัฒนาโปรแกรมขึ้นมาเพื่ออุดช่องโหว่ ที่มีอยู่เดิม (หรือ แพช) และยังได้รวบรวมเอาข้อมูลการพัฒนา และการแก้ไขต่างๆ แต่ข้อมูลเหล่านี้อยู่ตามที่ต่างๆ ไม่ได้รวมอยู่ในที่ที่เดียวกัน จนในที่สุด ไบอัน บีเลนดอร์ฟ (Brian Behlendorf) ได้สร้างจดหมายกลุ่ม (mailing list) ขึ้นมาเพื่อนำเอาข้อมูลเหล่านี้เข้าไว้เป็นกลุ่มเดียวกัน เพื่อให้สามารถเข้าถึงข้อมูลเหล่านี้ได้ง่ายยิ่งขึ้น และในที่สุด กลุ่มผู้พัฒนาได้เรียกตัวเองว่า กลุ่มอาปาเช่ (Apache Group) และได้ปล่อยซอฟต์แวร์ HTTPD เว็บเซิร์ฟเวอร์ ที่พัฒนาโดยการนำเอาแพชหลายๆ ตัวที่ผู้ใช้ได้พัฒนาขึ้นเพื่อปรับปรุงการทำงาน ของซอฟ์ตแวร์ตัวเดิมให้มีประสิทธิภาพมากยิ่งขึ้น

ตั้งแต่ ปี พ.ศ. 2539 Apache ได้รับความนิยมขึ้นเรื่อยๆ จนปัจจุบันได้รับความนิยมเป็นอันดับหนึ่ง มีผู้ใช้งาน อยู่ประมาณ 65% ของเว็บเซิร์ฟเวอร์ที่ให้บริการอยู่ทั้งหมด

ความสามารถของ Apache

การที่อาปาเช่เป็นซอฟต์แวร์ที่อยู่ในลักษณะของ โอเพ่นซอร์ส ที่เปิดให้บุคคลทั่วไปสามารถเข้ามาร่วมพัฒนาส่วนต่างๆ ของอาปาเช่ได้ ซึ่งทำให้เกิดเป็น โมดูล ที่เกิดประโยชน์มากมาย เช่น mod_perl, mod_python หรือ mod_php ซึ่งเป็นโมดูลที่ทำให้อาปาเช่สามารถใช้ประโยชน์ และทำงานร่วมกับภาษาอื่นได้ แทนที่จะเป็นเพียงเซิร์ฟเวอร์ที่ให้บริการเพียงแค่ เอชทีเอ็มแอล อย่างเดียว นอกจากนี้อาปาเช่เองยังมีความสามารถอื่นๆ ด้วย เช่น การยืนยันตัวบุคคล (mod_auth, mod_access, mod_digest) หรือเพิ่มความปลอดภัยในการสื่อสารผ่าน โพรโทคอล https (mod_ssl) นอกจากนี้ ก็ยังมีโมดูลอื่นๆ ที่ได้รับความนิยมใช้ เช่น mod_vhost ทำให้สามารถสร้างโฮสท์เสมือน http://www.sample.com, wiki.sample.com, mail.sample.com หรือ http://www.ilovewiki.org ภายในเครื่องเดียวกันได้ หรือ mod_rewrite เป็นเครื่องมือที่จะช่วยให้ url ของเว็บนั้นอ่านง่ายขึ้น

ขั้นตอนแรกก็ทำการอัฟเดตแพ็กเก็ตต่างๆก่อนด้วยคำสั่ง

#sudo apt-get update

#sudo apt-get upgrade

#apt-get install mysql-server mysql-client

New password for the MySQL “root” user: <– yourrootsqlpassword
Repeat password for the MySQL “root” user: <– yourrootsqlpassword

แล้วทำการตรวจสอบว่ามี Apache มีอยู่หรือเปล่า อาจจะสอบจากบราวเซอร์ หรือใช่คำสั่งง่ายๆ เช่น ps -e, ps -el, ps-elf

* ถ้าต้องการลบออกก็ใช้คำสั่งดังนี้

$sudo apt-get remove –purge apache2 apache2-utils

(ซึ่งจะทำการลบพร้อม ปิดโปรเซสให้ แล้วทำการ reboot เครื่องใหม่)

ถ้ามีตัว  Apache2 อยู่ก็จะเห็น โปรเซสแสดงอยู่ แสดงว่าติดตั้งแล้ว

ถ้าในกรณีที่ยังไม่ติดตั้งก็ทำการติดตั้งด้วยคำสั่ง ดังนี้

#sudo apt-get install apache2

เมื่อมีคำถามก็ให้กด y ถ้าต้องการติดตั้ง ถ้าไม่ต้องการไม่ต้องการติดตั้งกด  n

เสร็จเรียบร้อยแล้ว ก็ใช้รันด้วยคำสั่ง

$sudo /etc/init.d/apache2 restart

แล้วจากนั้น ก็ทำการทดสอบด้วย browser

พิมพ์ที่ url address

     ถ้าภายในเครื่องเดียวกัน คือทำที่เครื่องไหน ก็พิมพ์ http://localhost หรือ http://127.0.0.1 จะแสดงข้อความดังรูป

   ถ้าอยู่ที่เครื่องอื่นๆ ก็พิมพ์(โดยเราตั้งโดเมนของเราชื่อ test.com)  http://test.com ถ้ามีมีข้อผิดพลาดใดๆ ก็จะสามารถใช้งานได้ จะแสดงคล้ายรูปข้างบน แต่ต่างกันตรงที่ url  เท่านั้น

*ถ้ามีปัญหาการติดตั้ง แนะนำให้ทำการ ลบ Apache ออกด้วยคำสั่ง

$sudo apt-get remove –purge apache2 apache2-utils

เมื่อทำการติดตั้ง apache2 เสร็จเรียบร้อย อ้อ ถ้ามีปัญหาแจ้งมาน่ะ

shell script สำหรับการติดตั้งเว็บไซต์ทำเป็น Virtual Server บน Apache 2 ของเราด้วยเอง ลองเอาไปใช้ดู

#!/bin/bash
################
# Script for creating Virtual Servers On Apache2
# Tested on Debian
# Check for the correct parameters
if [ $# -eq 0 ]; then
    echo ‘You should provide a name for you new site’
    echo ‘Usage: virtual_site_creator [FQDN]’
    exit 0
fi
# Assign Variables SITE=$1
# Create the Directory which will contain your Virtual Site
if [ ! -d /var/www/$SITE ]; then
   mkdir /var/www/$SITE
fi
# Create the Config file for your virtual site
echo “#NameVirtualHost * “> /etc/apache2/sites-available/$SITE
echo “”>> /etc/apache2/sites-available/$SITE
echo “ServerAdmin webmaster@$SITE” >> /etc/apache2/sites-available/$SITE
echo ‘ ‘>>/etc/apache2/sites-available/$SITE
echo “DocumentRoot /var/www/$SITE”>>/etc/apache2/sites-available/$SITE
echo ”>>/etc/apache2/sites-available/$SITE
echo ‘Options FollowSymLinks’>>/etc/apache2/sites-available/$SITE
echo ‘AllowOverride None’>>/etc/apache2/sites-available/$SITE
echo ”>>/etc/apache2/sites-available/$SITE
echo “”>>/etc/apache2/sites-available/$SITE
echo ‘Options Indexes FollowSymLinks MultiViews’>>/etc/apache2/sites-available/$SITE
echo ‘AllowOverride All’>>/etc/apache2/sites-available/$SITE
echo ‘Order allow,deny’>>/etc/apache2/sites-available/$SITE
echo ‘allow from all’>>/etc/apache2/sites-available/$SITE
echo ”>>/etc/apache2/sites-available/$SITE
echo ‘ErrorLog /var/log/apache2/error.log’>>/etc/apache2/sites-available/$SITE
echo ‘LogLevel warn’>>/etc/apache2/sites-available/$SITE
echo ‘CustomLog /var/log/apache2/access.log combined’>>/etc/apache2/sites-available/$SITE
echo ‘ServerSignature On’>>/etc/apache2/sites-available/$SITE
echo ”>>/etc/apache2/sites-available/$SITE
# Create the Sym Link to enable your Virtual Site
if [ ! -L /etc/apache2/sites-enabled/$SITE ]; then
     ln -s /etc/apache2/sites-available/$SITE /etc/apache2/sites-enabled/
fi

ถ้ามีอะไรจะเอาเพิ่มเติมอีกน่ะคับ

  1. pk
    ธันวาคม 19, 2012 ที่ 16:35

    ติดตั้ืง apache2 ไม่ได้ืครับ

    • ธันวาคม 20, 2012 ที่ 10:22

      สาเหตุมาจากอะไรครับ รบกวนแจ้งสิ่งที่ผิดพลาดครับ จะได้นำไปแก้ไข

  1. No trackbacks yet.

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: