cPanel: ตั้งเวลารัน Script ด้วย Cron Jobs

📅 21 มิ.ย. 2569 · ⏱ อ่าน ~2 นาที · 👁 1 ครั้ง

Cron Job คืออะไร

Cron Job คือคำสั่งที่ระบบรันให้อัตโนมัติตามเวลาที่กำหนด เช่น:

  • รัน WordPress cron (wp-cron.php) ทุก 15 นาที
  • Backup ฐานข้อมูลทุกคืนตี 2
  • Clear cache ทุกชั่วโมง

สร้าง Cron Job ใหม่

  1. ไปที่ cPanel Home → Advanced → Cron Jobs
  2. ใน Common Settings เลือก template เวลาที่ใช้บ่อย เช่น "Every Day" หรือ "Every 15 Minutes" ได้เลย

(ระบบจะกรอกค่า Minute/Hour/Day/Month/Weekday ให้อัตโนมัติ)

  1. กรอก Command — คำสั่งที่จะรัน
  2. กด Add New Cron Job

ตัวอย่างค่าที่ใช้บ่อย

ความถี่MinHourDayMonWeekday
ทุกนาที*
ทุก 15 นาที/15*
ทุกชั่วโมง0
ทุกวัน ตี 202*
ทุกวันจันทร์ 9โมง091

ตัวอย่าง Command

รัน PHP script

/usr/local/bin/php /home/username/public_html/cron.php
ใช้ which php ใน SSH เพื่อหา path ที่ถูกต้องบน server ของคุณ

รัน WordPress cron

cd /home/username/public_html && /usr/local/bin/php wp-cron.php

Backup ฐานข้อมูล

/usr/bin/mysqldump -u username_dbuser -pMYPASS username_db | gzip > /home/username/backups/db-$(date +\%Y\%m\%d).sql.gz
สัญลักษณ์ % ในคำสั่ง cron ต้อง escape เป็น \%

อีเมล Output

cPanel จะส่ง output ของ cron ทาง email — ถ้าไม่ต้องการ ต่อท้าย command ด้วย:

... > /dev/null 2>&1

หรือตั้ง Cron Email ที่ด้านบนของหน้าเพื่อระบุอีเมลรับ output

ตรวจสอบว่า Cron รันจริง

ใส่ log ใน script:

file_put_contents(__DIR__."/cron.log", date("Y-m-d H:i:s").PHP_EOL, FILE_APPEND);

แล้วเปิด cron.log เช็คดู

ลบ Cron Job

Cron Jobs → กด Delete ที่บรรทัดที่ต้องการ

บทความนี้มีประโยชน์ไหม?

📚 บทความที่เกี่ยวข้อง