CronJob คืออะไร วิธีตั้งเวลาให้ PHP ทำงาน
Cronjob เป็นคุณสมบัติพื้นฐานของระบบปฏิบัติการ Linux โดยลีนุกซ์นั้น จัดว่าเป็นระบบปฏิบัติการยูนิกซ์ประเภทหนึ่งด้วยเช่นกัน
เราสามารถใช้คุณสมบัติ CronJob นี้ เพื่อกำหนดช่วงเวลาการทำงานของภาษา php หรือ script ใด ๆ โดยอัตโนมัติได้
โดยปกติแล้วการที่ภาษาที่เป็น Server Side ต่าง ๆ จะสามารถเริ่มทำงานได้ จะต้องอากศัย User ในการเริ่มทำงาน
คือจะทำการเปิดเบราว์เซอร์หน้าเว็บไซต์นั้น ๆ ก่อน ถึงจะสามารถทำงานคำสั่งต่าง ๆ ภายใน script file นั้น ๆ ได้
แต่เราสามาถใช้ความสามารถของ CronJob ในการสั่งให้ไฟล์นั้น ๆ ทำงานได้ โดยไม่ต้องอาศัยการเปิดหน้าเว็บไซต์ของเลย
เราสามารถใช้คุณสมบัติ CronJob นี้ เพื่อกำหนดช่วงเวลาการทำงานของภาษา php หรือ script ใด ๆ โดยอัตโนมัติได้
โดยปกติแล้วการที่ภาษาที่เป็น Server Side ต่าง ๆ จะสามารถเริ่มทำงานได้ จะต้องอากศัย User ในการเริ่มทำงาน
คือจะทำการเปิดเบราว์เซอร์หน้าเว็บไซต์นั้น ๆ ก่อน ถึงจะสามารถทำงานคำสั่งต่าง ๆ ภายใน script file นั้น ๆ ได้
แต่เราสามาถใช้ความสามารถของ CronJob ในการสั่งให้ไฟล์นั้น ๆ ทำงานได้ โดยไม่ต้องอาศัยการเปิดหน้าเว็บไซต์ของเลย
วิธีตั้งค่าใช้งาน CronJob
1. เข้าสู่ระบบ DirectAdmin เลือกโดเมนที่ต้องการใช้งาน run script php
2. ไปที่ส่วน Advanced Features มองหาหัวข้อ CronJob
3. หลังจากคลิกเข้ามาเจอช่องให้ใส่ ช่วงเวลาและวัน ที่จะให้ run script โดยอธิบาย input ต่าง ๆ ได้ดังนี้
- Minute ใส่ตัวเลขนาที 0-59
- Hour ใส่ตัวเลขชั่วโมง 0-23
- Day of Month ใส่ตัวเลขวันที่ 1-31
- Month ใส่ตัวเลขเดือน 0-12
- Day of Week ใส่ตัวเลขวัน 1-7 หรือ Sun-Sat ( ตัวเลข 0 หรือ 7 มีค่าเท่ากันคือวันอาทิตย์ )
- Command คือ Path ของ php script ที่เราต้องการให้ทำงาน
- Prevent Email ถ้าเราไม่ต้องการให้ส่งข้อมูลทุกครั้งที่ CronJob ทำงานให้กดที่ปุ่มนี้
ตัวอย่างการกำหนดเวลา
เครื่องหมายดอกจัน ( * ) หมายถึงทำงาน ทุกนาที ทุกชั่วโมง ทุกวัน ทุกเดือน คือทำงานทั้งหมด
- กำหนดให้ทำงานทุก 5 นาที ให้กรอกข้อมูลดังนี้
- กำหนดให้ทำงานทุกเที่ยงคืนของทุกวัน ให้กรอกข้อมูลดังนี้
- กำหนดให้ทำงานทุก 6 โมงเข้าของทุกวันศุกร์
ทดสอบการทำงาน
สำหรับการทดสอบการทำงานของ CronJob ให้ลองสร้างไฟล์ .php และเขียนคำสั่งส่งอีเมลไปที่อีเมลของเรา
ทุก ๆ 3 นาทีและตรวจดูว่ามีอีเมลเข้าที่มีกล่องข้อความหรืออีเมลขยะหรือไม่ ถ้าการตั้งค่าต่าง ๆ ถูกต้องเราก็จะได้รับอีเมล
ทุก ๆ 3 นาทีและตรวจดูว่ามีอีเมลเข้าที่มีกล่องข้อความหรืออีเมลขยะหรือไม่ ถ้าการตั้งค่าต่าง ๆ ถูกต้องเราก็จะได้รับอีเมล
ตัวอย่างกำหนด Command Path
สำหรับการกำหนด Path ของ php script หรือภาษาอื่น ๆ ให้เรากำหนดเป็นแบบ Absolute Hosting Path ตัวอย่างเช่น
Command ด้านบนเป็นเพียงตัวอย่าง สำหรับ Command Path อาจจะมีความแตกต่างกันไปตามแต่ละผู้ให้บริการซึ่งท่าน
สามารถสอบถามหรือหาตัวอย่างซึ่งอยู่ในหน้าการใช้งาน Cronjob ได้ด้วยตัวเอง
สำหรับการใช้งาน cronjob ร่วมกับ php framework ถ้าไม่สามารถใช้งานได้กับ command ด้านบนให้เปลี่ยนไปใช้ wget แทน ตัวอย่างคำสั่ง wget command เมื่อใช้กับ codeigniter framework
สามารถสอบถามหรือหาตัวอย่างซึ่งอยู่ในหน้าการใช้งาน Cronjob ได้ด้วยตัวเอง
สำหรับการใช้งาน cronjob ร่วมกับ php framework ถ้าไม่สามารถใช้งานได้กับ command ด้านบนให้เปลี่ยนไปใช้ wget แทน ตัวอย่างคำสั่ง wget command เมื่อใช้กับ codeigniter framework
ไม่มีความคิดเห็น:
แสดงความคิดเห็น