apache webserver

Apache Webserver คืออะไร โปรแกรมรองรับคำขอเพื่อเชื่อมต่อ application

Apache คืออะไร?

หลังจากบทความที่แล้วที่เราทำความเข้าใจกับ LAMP กันไปแล้ว รวมถึง Linux  ด้วยที่นี้ตัวต่อไปที่เราจะอธิบายคือ Apache ที่ทำหน้าที่เป็น Web Server กันครับ

webserver

Apache (อะแพช’ชี)  หรือ Apache Webserver เป็นซอฟต์แวร์เซิร์ฟเวอร์ที่ใช้กันอย่างแพร่หลาย Apache  พัฒนาและดูแลโดย  Apache Software Foundation ซึ่งเป็นซอฟต์แวร์โอเพนซอร์สที่สามารถใช้งานได้ฟรี โดยมีการใช้โดยรวมประมาณ 67% ของเว็บเซิร์ฟเวอร์ทั้งหมดในโลก ซึ่งรวดเร็วเชื่อถือได้และปลอดภัย สามารถปรับแต่งได้เพื่อตอบสนองความต้องการของสภาพแวดล้อมที่หลากหลาย โดย สามารถเพิ่ม function พิเศษที่เป็น module pluginได้โดยง่าย

Web server คืออะไร?

webserver

Webserver (เว็บเซิร์ฟ)  เป็นเหมือน host ร้านอาหาร เมื่อคุณมาถึงร้านอาหาร host จะทักทายคุณตรวจสอบข้อมูลการจองของคุณและพาคุณไปที่โต๊ะ โดยเว็บเซิร์ฟเวอร์จะทำหน้าที่ตรวจสอบหน้าเว็บที่คุณขอและทำการดึงข้อมูลออกมาให้ อย่างไรก็ตามเซิร์ฟเวอร์เว็บไม่ใช่ host อย่างเดียว แต่รวมถึงเซิร์ฟเวอร์ของคุณ เมื่อพบหน้าเว็บที่คุณขอแล้ว ระบบจะแสดงหน้าเว็บดังกล่าวด้วย เว็บเซิร์ฟเวอร์จะทำการสื่อสารกับเว็บไซต์ จัดการกับคำขอของคุณทำให้แน่ใจได้ว่า ระบบพร้อมให้บริการคุณ นอกจากนี้ยังคอยเป็น hosekeeping ทำความสะอาดหน่วยความจำแคชโมดูล และล้างข้อมูลเหล่านี้สำหรับคำขอใหม่ๆ

ดังนั้นโดยทั่วไปเว็บเซิร์ฟเวอร์คือซอฟต์แวร์ที่ได้รับคำขอให้เข้าใช้เว็บเพจ รวมถึงตรวจสอบความปลอดภัยบางอย่างในคำขอ HTTP ของคุณและนำคุณไปที่หน้าเว็บ หน้านี้อาจขอให้เซิร์ฟเวอร์เรียกใช้โมดูลพิเศษบางโมดูลในขณะที่สร้างเอกสารเพื่อให้บริการคุณ ทั้งนี้ขึ้นอยู่กับหน้าเว็บที่คุณ request ขึ้นมา จากนั้นจะแสดงข้อมูลนั้นให้กับคุณ

Install Apache

การติดตั้งก็ง่ายมากสำหรับ Linux Ubumtu

# Ubuntu
sudo apt install apache2

Configure Apache

path configure file อยู่ที่  “/etc/apache2/”

  • apache2.conf:  Configure file หลักของ Apache2  ประกอบไปด้วย Global configure ทั้งหมด

  • httpd.conf: อดีตเคยเป็น file main หลัก ซึ่งปัจจุบันถูกแทนที่ด้วย apache2.conf

  • conf-available: directory ของ available configuration files  ก่อนหน้านี้อยู่ที่ file  “/etc/apache2/conf.d”  ภายหลัง apache แยก split ออกมาเป็น file ของแต่ละ virtual server ภายใต้ “/etc/apache2/conf-available”

  • conf-enabled: จะทำ symlinks ไปที่ directory “/etc/apache2/conf-available” ซึ่งจะ active หลังจากมีการ run command ของ apache เพื่อน enable virtual host นั้น และจะ active หลังจาก restart apache

  • envvars: file ตัวแปร Apache2 environment

  • mods-available: หลักการเดียวกับ conf แต่ใช้สำหรับเก็บ module apache

  • mods-enabled: เช่นเดียวกันกับ  conf  ถ้ามีการ enable จะสร้าง symlink ขึ้นมา แสดงว่า apache มีการใช้งาน module นั้นๆ

  • ports.conf: Configure listen port ของ apache ซึ่งโดยปกติจะเป็น default port 80 แต่ถ้ามีการ enable https (ssl) ก็จะมี port 443 ด้วย

  • sites-available: ทำหน้าที่เก็บ configure Virtual host มั้งหมดของ apache ซึ่งหลักการทำงานเหมือนกับ conf และ mods directory

  • sites-enabled: หลักการทำงานเหมือนกับ conf และ mods directory  โดยสร้าง symlink ขึ้นมา แสดงว่า apache มีการใช้งาน Virtual host นั้นๆ

  • magic: instructions for determining MIME type based on the first few bytes of a file.

Top 4 Web Server ยอดนิยม

  1.  Apache HTTP Server –  Apache Software Foundation
  2. Internet Information Server (IIS) – Microsoft
  3. Sun Java System Web Server – Sun Microsystem
  4. Zeus Web Server –  Zeus Technology

apache logo        microsoft sun oracle

สรุปแล้ว Web server คือ เครื่องผู้ให้เก็บข้อมุลเว็บโดยใช้ HTTP (HyperText Transfer Protocol) ส่งสงผลเป็น html ให้ web Browser เพื่อให้ผู้ใช้สามารถเข้ามาดูข้อมูล ภาพ เสียง ผ่าน web browser

Author: Suphakit Annoppornchai

Credit: https://saixiii.com

13 thoughts on “Apache Webserver คืออะไร โปรแกรมรองรับคำขอเพื่อเชื่อมต่อ application

  1. […] LAMP กันไปแล้ว รวมถึงเรื่อง Linux และ Apache ที่นี้ตัวต่อไปก็ คือ MySQL […]

  2. […] = Apache ใช้เป็น webserver สำหรับจัดเก็บ webpage […]

  3. […] server ซึ่งได้แก่ Apache, MySQL และ PhpMyAdmin หรือก็คือ LAMP […]

  4. […] Web servers อาทิเช่น Apache HTTP Server, Netscape Enterprise Server, Microsoft Internet Information Services (IIS), IBM HTTP Server for […]

  5. […] โดยไม่มีค่าใช้จ่าย ไม่ต้อง configure web server (apache) ให้ยุ่งยาก รวม ไม่ต้องยืนยันตัวตน […]

  6. […] HTTPS หรือ  HTTP over Transport Layer Security (TLS) หรือ HTTP over SSL คือโปรโตรคอลที่สือสารด้วยการเข้ารหัสบนระบบ network โดยใช้กันแพร่หลายบน internet โดย HTTPS ประกอบไปด้วย HTTP + TLS ซึ่งจุดที่สำคัญเลยคือส่วน authentication ในการเข้าสู่ website เพื่อป้องกัน และสร้างความเป็นส่วนตัวในการแลกเปลี่ยนข้อมูล โดยตรงกับทาง web server ไม่ให้เกิดการโจรกรรมข้อมูลระหว่างกลางหรือ man-in-the-middle attacks มากกว่านั้นยังสามารถเข้ารหัสทั้ง 2 ทาง ระหว่าง client – server เพื่อกันการปลอมแปลงข้อมูลและยังมีการรับประกันว่าข้อมูลที่แลกเปลี่ยนจะไม่สามารถ แกะ และ ปลอมแปลงโดยผู้อื่นได้ เหมาะสำหรับธรุกิจ ที่มีข้อมูลเป็นความลับเช่นการเงิน ธนาคาร […]

  7. […] บน java application – JBoss Web Server – เป็น web server ซึ่งจะใช้ Apache และ Tomcat – JBoss Data Grid – in-memory distributed database. – JBoss Developer Studio […]

  8. […] foward HTTP request ได้แก่  Apache (ใช้ mod_proxy หรือTraffic Server), HAProxy, IIS configured as proxy, Nginx, Privoxy, […]

  9. […] web application ที่รันบน web server เช่น apache โดย Rail ทำงานเป็น server ในส่วนเบื้องหลัง […]

  10. […] Python เพื่อใช้ร่วมกัน webserver เช่น Apache และได้รับการยอมรับจาก community we pages […]

Leave a Reply