
ถ้าคุณใช้งาน Web Hosting โดยเฉพาะใน cPanel หรือ DirectAdmin อาจจะเคยเห็นเมนูที่ชื่อว่า Apache Handlers แต่ไม่แน่ใจว่ามันคืออะไร หรือจะใช้อย่างไร ซึ่งจริง ๆ แล้ว Apache Handlers นับเป็นส่วนสำคัญของ Apache Web Server ที่ช่วยกำหนดว่าไฟล์หรือสคริปต์ในเว็บไซต์ของคุณจะถูกประมวลผลอย่างไร โดยการเข้าใจการทำงานของมัน จะช่วยให้คุณจัดการเว็บได้อย่างมีประสิทธิภาพมากขึ้น
Apache Handlers คืออะไร?
การตั้งค่าใน Apache Web Server เพื่อบอกว่าหากมีการเรียกไฟล์ที่มีนามสกุล (extension) หรือ MIME Type ที่กำหนดไว้ จะให้ Apache ส่งไฟล์นั้นไปประมวลผลด้วยโมดูลหรือโปรแกรมใด ก่อนที่จะส่งผลลัพธ์กลับไปยังผู้ใช้ เช่น
- ไฟล์ .php → ให้ประมวลผลด้วย PHP Interpreter
- ไฟล์ .cgi → ให้ประมวลผลด้วย CGI Script
- ไฟล์ .pl → ให้ประมวลผลด้วย Perl Interpreter
ความสำคัญของ Apache Handlers
- ควบคุมการทำงานของเว็บไซต์ได้ยืดหยุ่น โดยสามารถกำหนดได้เองว่าจะให้ไฟล์ใดรันด้วยโปรแกรมอะไร
- รองรับการใช้งานไฟล์/สคริปต์เก่า เช่น .php4, .php5 บนเซิร์ฟเวอร์ใหม่
- เพิ่มความสามารถให้เว็บไซต์ เช่น รองรับสคริปต์ภาษา Perl, Python หรือ CGI ได้
- เมื่อ Apache รู้วิธีประมวลผลไฟล์ตามที่ตั้งค่าไว้ จะช่วยป้องกันปัญหาที่เว็บไซต์แสดงโค้ดดิบหรือผิดพลาดได้
ตัวอย่างการใช้งาน Apache Handlers ที่พบบ่อย
| Handler | การใช้งาน | ตัวอย่างการตั้งค่า |
|---|---|---|
| application/x-httpd-php | ให้ไฟล์ .php ถูกประมวลผลด้วย PHP interpreter | AddHandler application/x-httpd-php .php |
| cgi-script | รันไฟล์ .cgi หรือ .pl เป็น CGI Script | AddHandler cgi-script .cgi .pl |
| server-parsed | เปิดใช้ Server Side Includes (SSI) เช่นในไฟล์ .shtml | AddHandler server-parsed .shtml |
| application/x-httpd-imagemap | ใช้กับ Image Map บนเว็บเพจ | AddHandler application/x-httpd-imagemap .map |
| application/x-tar | ให้ไฟล์ .tar ถูกส่งไปยังเบราว์เซอร์แบบดาวน์โหลดไฟล์ | AddHandler application/x-tar .tar |
| text/plain | ให้ไฟล์แสดงเป็นข้อความธรรมดา ไม่ต้องประมวลผล | AddHandler text/plain .log .txt |
| application/x-gzip | ให้ไฟล์ .gz ถูกส่งเป็นไฟล์บีบอัด gzip | AddHandler application/x-gzip .gz |
สำหรับการใช้งาน Apache Handlers แบบอื่น ๆ สามารถดูได้ที่
➤ รายการ handler code สำหรับ Apache Handlers
การทำงานของ Apache Handlers
- ผู้ใช้เรียกไฟล์ เช่น https://example.com/test.php
- Apache ตรวจสอบนามสกุลไฟล์หรือ MIME Type
- Apache จับคู่ไฟล์กับ Handler ที่ถูกตั้งค่าไว้ (ตามค่าเริ่มต้นหรือที่กำหนดเอง)
- Handler ส่งไฟล์ให้โมดูลหรือโปรแกรมประมวลผล เช่น PHP, Perl, CGI
- ผลลัพธ์ส่งกลับไปยังผู้ใช้เป็นหน้าเว็บสมบูรณ์
การตั้งค่า Apache Handlers
สำหรับผู้ที่ต้องการตั้งค่าเองใน .htaccess
# ให้ไฟล์ .php4 ประมวลผลด้วย PHP
AddHandler application/x-httpd-php .php4
# ให้ไฟล์ .pl และ .cgi รันเป็น CGI Script
AddHandler cgi-script .pl .cgi
สำหรับผู้ที่ต้องการตั้งค่าใน Control Panel (DirectAdmin/cPanel)
- เปิดเมนู Apache Handlers
- กำหนดชื่อ Handler (เช่น cgi-script) และ Extension (เช่น .cgi .pl) ที่ต้องการ
- บันทึกการเพิ่มไฟล์ดังกล่าว
ข้อควรระวัง
- เลี่ยงการตั้งค่าให้ไฟล์ทั่วไป อย่าง .txt หรือ .html ประมวลผลเป็น PHP เพราะอาจเสี่ยงเกิดช่องโหว่ด้านความปลอดภัย
- การตั้งค่าผิดอาจทำให้เว็บใช้งานไม่ได้หรือแสดงผลผิด
- ควรสำรองไฟล์ .htaccess ก่อนปรับแต่งทุกครั้ง
สรุปแล้ว Apache Handlers ก็เป็นเหมือนตัวชี้ทางให้ Apache Web Server รู้ว่าควรจัดการไฟล์ต่าง ๆ อย่างไร ซึ่งการเข้าใจและใช้งาน Apache Handlers อย่างถูกต้อง จะช่วยให้เว็บไซต์ทำงานได้ราบรื่น ปรับแต่งได้ยืดหยุ่น และปลอดภัยมากขึ้น โดยเฉพาะหากคุณต้องรันสคริปต์พิเศษ หรือใช้ภาษาที่ต่างไปจากค่าเริ่มต้นของโฮสติ้ง
สนใจเรียนรู้เพิ่มเติมเกี่ยวกับการตั้งค่าเว็บไซต์ให้ปลอดภัยและแสดงผลได้ถูกต้อง? ติดต่อทีมงานของเรา เพื่อขอคำปรึกษาเรื่อง Web Hosting และการตั้งค่าเว็บไซต์ต่าง ๆ อย่างมืออาชีพ