ปัญหาที่พบบ่อย
ปัญหาที่พบบ่อยข้อผิดพลาด "Operation timed out"

ข้อผิดพลาด "Operation timed out"

หาก API ของ AI provider ใช้เวลาตอบสนองนานเกินไป คำขอจะถูกยกเลิกโดย HTTP client ของปลั๊กอิน และการแปลจะล้มเหลวพร้อมข้อผิดพลาดในลักษณะดังนี้:

2026-05-20T03:11:48+00:00 Error [Query "translate-customposts"] Execution with errors: 🔴 Translation to es_AR failed - The API for provider 'ChatGPT' returned error: cURL error 28: Operation timed out after 60000 milliseconds with 0 bytes received (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://api.openai.com/v1/chat/completions

ส่วนสำคัญคือ cURL error 28: Operation timed out after N milliseconds ซึ่งหมายความว่าคำขอได้ถึงขีดจำกัด Translation Timeout ที่กำหนดไว้ในปลั๊กอินก่อนที่ API จะตอบสนองเสร็จสิ้น

เพิ่มค่า Translation Timeout

ไปที่หน้า Settings ใต้ Plugin Configuration > Translation Timeout แล้วเพิ่มค่าให้สูงขึ้น

การตั้งค่าตัวเลือก Translation Timeout
การตั้งค่าตัวเลือก Translation Timeout

ควรตั้งค่าให้ ต่ำกว่า max_execution_time ของเซิร์ฟเวอร์ (กำหนดใน php.ini หรือผ่านแผงควบคุมของโฮสติ้ง) เพื่อให้การแปลที่ค้างอยู่ยังคงล้มเหลวอย่างสะอาดพร้อมข้อผิดพลาดที่ควบคุมได้ในล็อก แทนที่จะเกิด server timeout ทั่วไป (HTTP 502 / 504 หรือหน้าว่างเปล่า "Maximum execution time of N seconds exceeded")

หากการแปลของคุณหมดเวลาเป็นประจำ ให้เพิ่มทั้ง Translation Timeout และ max_execution_time ของเซิร์ฟเวอร์ พร้อมกัน

ลดขนาด payload ที่ส่งในแต่ละคำขอ

วิธีแก้ไขเสริมคือการส่งคำขอที่สั้นลง เพื่อให้แต่ละคำขอประมวลผลได้เร็วขึ้นและมีโอกาสน้อยลงที่จะถึงขีดจำกัดเวลา

ไปที่ Settings > Service Configuration > [AI service] แล้วลดค่าตัวเลือก Max request payload length ให้เหลือจำนวนอักขระที่เหมาะสม

ตัวอย่างเช่น หากตั้งค่าไว้ที่ 4000 แล้วยังคงล้มเหลว ให้ลองใช้ 2000

การตั้งค่าตัวเลือก 'Max request payload length'
การตั้งค่าตัวเลือก 'Max request payload length'

เมื่อลด payload ลง การแปลจะถูกแบ่งออกเป็นคำขอขนาดเล็กหลายรายการ ซึ่งแต่ละรายการจะประมวลผลได้เร็วขึ้น

ดูเพิ่มเติมที่ การหลีกเลี่ยง timeout ใน PHP server