Sunday, December 23, 2012

Apache คืออะไร

Apache คืออะไร

Apache คืออะไร Apache คือ Software ที่ทำหน้าที่เป็น webserver โดยให้บริการ protocol HTTP ที่ port 80 ลักษณะเด่น คือเป็น Software ที่เป็น Opensource ติดตั้งมาพร้อมกับ ระบบปฎิบัติการ Linux และมีใช้กันอย่างแพร่หลายมากที่สุดในโลก

ที่มาของชื่อ Apache มาจากกลุ่มคนที่ช่วยสร้างแพตช์ไฟล์สำหรับโครงการ NCSA httpd1.3 ซึ่งกลายมาเป็นที่มาของชื่อ A PAtCHy server และในอีกความหมายหนึ่งยังกล่าวถึงเผ่าอะแพชีหรืออาปาเช่ ซึ่งเป็นเผ่าอินเดียนแดงที่มีความสามารถในการรบสูง

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



โดยหน้าที่หลักของ webserver ทั่วไปมีดังนี้


  1. คอยจัดการ Request ก็คือ การร้องขอข้อมูล
  2. คอยจัดการ Resposne ก็คือ การส่งข้อมูลกลับไป
  3. คอยจัดการ process และจัดลำดับ ของ request และ response
  4. คอยเก็บ logs ที่มีการ access เข้ามารวมกระทั้ง error ต่างๆๆ ที่ webserver พบ เช่น ไม่เจอไฟล์ชื่อนี้
  5. สามารถ เอา module มาใช่ร่วมกับ webserver ได้ ยกตัวอย่างเช่น Apache นั้น ไม่สามารถ run ไฟล์ .php ได้ ต้อง เรียกใช้ module php อีกที หรือ การ rewrite url ก็ใช่เดียวกันต้องใช้ mod_rewrite ในการสร้าง
เมื่อรู้หน้าที่ของ Apache ไปแล้วทีนี้เรามารู้จัก Webserver ตัวอื่น บ้าง ๆๆ
  1. IIS เป็น Webserver ที่ทาง Microsoft พัฒนาขึ้น โดยจะติดตั้งมาให้กับ ตระกูล Window NT หรือว่า Windows ตระกูล Server นั้นเอง ใน IIS จะติดตั้งตัว Compile ภาษา asp หรือว่า asp.net มาให้ด้วย ซึ่งสามารถ Config ให้ Run php โดย ติดตั้งตัวแปรกภาษา php ลงไป ในบทความบทต่อไปจะได้กล่าวถึง
  2. Apache Tomcat เป็น หนึ่งในตระกูล Apache ซึ่งเป็น Opensource เช่นเดียวกับ Apache แต่จะติดตั้งตัว Compile ภาษา Jsp มาให้ด้วย โดยลักษณะการทำงาน ก็คือ Apache Tomcat จะ Compile ไฟล์ jsp เป็น Class File ที่เรียกว่า Servlert ก่อนแล้วจึงให้ ตัว Servlet Engine ทำหน้าที่ในการ Compile ต่อ ออกมาเป็น Web
  3. Apache เป็น Opensource และมีคนพัฒนา โดยใช้ Apache มากที่สุดในโลก เนื่องจาก Free และ มีบทความต่างๆ รวมถึงเป็น ระบบที่อยู่มานานแล้วจึงมีการพัฒนาจน สเถียรมาก
สามารถ Download Software ได้ที่

http://www.apache.org/dyn/closer.cgi

0 comments:

Post a Comment

Twitter Delicious Facebook Digg Stumbleupon Favorites More