เปลี่ยน PHP Version บน cPanel อย่างถูกต้อง

ขั้นตอนเปลี่ยน PHP Version ผ่าน MultiPHP Manager ตั้งค่า Extensions และแก้ปัญหาที่อาจเกิดขึ้น เพื่อให้เว็บทำงานได้อย่างราบรื่น

เปลี่ยน PHP Version บน cPanel

ทำไมต้องอัปเดต PHP Version?

PHP Version ที่เก่าไม่ได้รับการอัปเดต Security Patch อีกต่อไป ทำให้มีความเสี่ยงด้านความปลอดภัย นอกจากนี้ WordPress, WooCommerce และ Plugin สมัยใหม่ต้องการ PHP 8.0 ขึ้นไป PHP เวอร์ชันใหม่ยังเร็วกว่าอย่างเห็นได้ชัด เช่น PHP 8.x เร็วกว่า PHP 7.4 ถึง 20–40%

PHP VersionStatusEnd of Life
PHP 7.4EOL — ไม่แนะนำพฤศจิกายน 2022
PHP 8.0EOL — ไม่แนะนำพฤศจิกายน 2023
PHP 8.1Security Fix Onlyธันวาคม 2025
PHP 8.2Active Supportธันวาคม 2026
PHP 8.3Active Support ✅ธันวาคม 2027

ดู PHP Version ปัจจุบัน

ก่อนเปลี่ยน ให้รู้ก่อนว่าปัจจุบันใช้ Version ใดอยู่:

Tip: หลังดู PHP Version เสร็จ ให้ลบไฟล์ info.php ออกทันที เพราะเปิดเผยข้อมูลระบบที่อาจเป็นประโยชน์กับ Hacker

เปลี่ยน PHP Version ผ่าน MultiPHP Manager

  1. ล็อกอิน cPanel แล้วไปที่หัวข้อ Software
  2. คลิก MultiPHP Manager
  3. ติ๊กเลือกโดเมนที่ต้องการเปลี่ยน
  4. เลือก PHP Version ที่ต้องการจาก Dropdown
  5. คลิก Apply
  6. รอสักครู่แล้วทดสอบเว็บ

ตั้งค่า PHP Extensions ที่จำเป็น

หลังเปลี่ยน PHP Version แล้ว ตรวจสอบว่า Extensions ที่จำเป็นถูกเปิดอยู่:

  1. ใน cPanel ไปที่ Software → MultiPHP INI Editor
  2. เลือก Editor Mode
  3. ตรวจสอบ Extensions ที่จำเป็นสำหรับ WordPress:

ปรับแต่ง php.ini ผ่าน .htaccess

ถ้าต้องการปรับค่า PHP เฉพาะบางโดเมนหรือบาง Directory สามารถทำผ่าน .htaccess ได้:

# เพิ่ม Memory Limit
php_value memory_limit 256M

# เพิ่ม Upload Size
php_value upload_max_filesize 64M
php_value post_max_size 64M

# เพิ่ม Execution Time
php_value max_execution_time 120

# เปิด Error Reporting (สำหรับ Development เท่านั้น)
php_flag display_errors On
php_value error_reporting E_ALL

ตรวจสอบด้วย phpinfo()

สร้างไฟล์ check.php ในโดเมนและเปิดในเบราว์เซอร์เพื่อดูข้อมูล PHP ทั้งหมด:

<?php
// check.php — ลบออกหลังใช้งาน!
echo "PHP Version: " . PHP_VERSION . "\n";
echo "Memory Limit: " . ini_get('memory_limit') . "\n";
echo "Max Upload: " . ini_get('upload_max_filesize') . "\n";
echo "Extensions: ";
print_r(get_loaded_extensions());
?>

ตรวจสอบว่า PHP Version เปลี่ยนถูกต้อง

# ตรวจ PHP Version ผ่าน SSH
php -v

# ตรวจ Extensions ที่โหลดอยู่
php -m

# ทดสอบว่า Script ทำงานได้
php -r "echo 'PHP OK: ' . PHP_VERSION . PHP_EOL;"

# ตรวจ php.ini ที่ใช้งาน
php --ini
Tip: ก่อนเปลี่ยน PHP Version บน Production ให้ทดสอบบน Staging Site ก่อน หรืออย่างน้อยทำ Backup เว็บและ Database ไว้ก่อนเสมอ

แก้ปัญหาที่พบบ่อย

Error: เว็บขึ้น 500 Internal Server Error หลังเปลี่ยน PHP

ตรวจสอบ PHP Error Log ใน cPanel → Logs → Errors ปัญหาที่พบบ่อยที่สุดคือ PHP Extension ที่ Plugin ต้องการไม่ได้ถูกเปิด ให้ดู Error Message ว่า Extension ใดหายไปแล้วเปิดเพิ่มใน MultiPHP INI Editor

Error: WordPress Plugin ทำงานผิดปกติหลังเปลี่ยน PHP

บาง Plugin ใช้ Function ที่ถูกลบออกจาก PHP Version ใหม่ (Deprecated/Removed) ให้อัปเดต Plugin ก่อน ถ้ายังไม่ได้อัปเดต ให้ Rollback PHP Version ชั่วคราวแล้วรออัปเดต Plugin ก่อน

Error: "Call to undefined function" หลังเปลี่ยน PHP

Extension ที่ Function นั้นต้องการไม่ได้ถูกโหลด ดู Error Message ว่า Function ใดหายแล้วค้นหาว่า Extension ใดที่ให้ Function นั้น เช่น mb_strlen() ต้องการ mbstring Extension

Error: PHP Extension เปิดแล้วแต่ phpinfo() ยังไม่แสดง

ตรวจสอบว่า PHP Version ที่เปิด Extension ตรงกับ PHP Version ที่เว็บใช้อยู่ ใน MultiPHP INI Editor ต้องเลือก PHP Version ที่ถูกต้องด้วย


คำถามที่พบบ่อย

ควรใช้ PHP Version ใดสำหรับ WordPress?

WordPress 6.x แนะนำให้ใช้ PHP 8.2 หรือ 8.3 ซึ่งเร็วกว่าและปลอดภัยกว่า ก่อนอัปเกรดตรวจสอบความเข้ากันได้ของ Plugin ทุกตัวที่ใช้งานอยู่ผ่าน Plugin Compatibility Page หรือทดสอบบน Staging

เปลี่ยน PHP แล้ว Site ช้าลงได้ไหม?

โดยปกติเปลี่ยนเป็น Version ใหม่กว่าจะเร็วขึ้น ถ้าช้าลงอาจเป็นเพราะ OPcache ยังไม่ได้ Warm Up (รอ 5–10 นาที) หรือมี Error ที่ทำให้ PHP ใช้ CPU เพิ่ม ตรวจสอบ Error Log

Hosting ของฉันไม่มี MultiPHP Manager ทำอย่างไร?

ติดต่อ Support ของ Hosting Provider เพื่อขอเปลี่ยน PHP Version หรือใช้วิธี .htaccess เพิ่ม AddHandler application/x-httpd-phpXX .php โดยเปลี่ยน XX เป็น Version เช่น php83