خطای cURL Error 28: Connection Timed Out یکی از خطاهای رایج در وردپرس است که ممکن است به دلایل مختلفی ایجاد شود.
در این مقاله قصد داریم علت بروز این خطا و روشهای حل آن را بررسی کنیم.
cURL چیست ؟
cURL یک کتابخانه نرم افزاری است که به شما امکان میدهد تا با استفاده از پروتکلهای مختلف، اطلاعات را از یک سرور به سرور دیگر منتقل کنید.
برای مثال، وقتی شما میخواهید یک پلاگین یا قالب را در وردپرس نصب کنید، cURL به شما کمک میکند تا فایلهای مورد نیاز را از سرور وردپرس دانلود و در سرور خود ذخیره کنید.
خطای cURL Error 28: Connection Timed Out چیست ؟
خطای cURL Error 28: Connection Timed Out به معنای این است که cURL نتوانسته است در زمان مشخص شده، اتصال را با سرور مقصد برقرار کند.
به عبارت دیگر، cURL منتظر ماندهاست تا پاسخی از سرور دریافت کند؛ اما پاسخی دریافت نشدهاست.
این خطا ممکن است در هنگام نصب یا بهروزرسانی پلاگینها ، قالبها ، هسته وردپرس یا هنگام استفاده از APIهای خارجی بروز کند.
علل بروز خطای cURL Error 28: Connection Timed Out
برخی از علل رایج بروز این خطا عبارتند از:
– مشکل در تنظیمات فایروال سرور: فایروال سرور ممکن است بعضی از درخواستهای cURL را مسدود کند و باعث شود که پاسخ در زمان مقرر دریافت نشود.
– مشکل در تنظیمات DNS سرور: DNS سرور مسئول تبدیل نام دامنه به آدرس IP است.
اگر DNS سرور کار نکند یا تنظیمات آن نادرست باشد، Ringlet نمیتواند آدرس IP سرور مقصد را پیدا کند و باعث شود که اتصال برقرار نشود.
– مشکل در تنظیمات PHP :PHP تعدادی از تنظیمات را برای cURL تعیین میکند.
بعضی از این تنظیمات مثل max_execution_time و default_socket_timeout میتوانند باعث شوند که cURL قبل از دریافت پاسخ، قطع شود.
– مشکل در سرعت یا پایداری اینترنت: اگر سرعت یا پایداری اینترنت شما پایین باشد، cURL نمیتواند به سرعت لازم با سرور مقصد تبادل اطلاعات کند و باعث شود که زمان اتصال تمام شود.
روشهای حل خطای cURL Error 28: Connection Timed Out
برای حل این خطا، میتوانید از روشهای زیر استفاده کنید:
– بررسی فایروال سرور: اگر شما از یک سرور اختصاصی یا مجازی استفاده میکنید، باید بررسی کنید که فایروال سرور شما درخواستهای cURL را مسدود نکند.
برای این کار، میتوانید با مدیر سرور خود تماس بگیرید یا از دستورات مربوط به فایروال استفاده کنید.
– بررسی DNS سرور: اگر شما از یک سرویس DNS خارجی مثل Cloudflare استفاده میکنید، باید بررسی کنید که DNS سرور شما درست کار میکند و آدرس IP سرور مقصد را به درستی تبدیل میکند.
برای این کار، میتوانید از ابزارهای آنلاین مثل DNS Checker استفاده کنید.
– بررسی تنظیمات PHP: اگر شما دسترسی به تنظیمات PHP دارید، باید بررسی کنید که تنظیمات مربوط به cURL مناسب باشند.
برای این کار، میتوانید از فایل php.ini یا تابع ini_set استفاده کنید.
بعضی از تنظیمات که میتوانند تاثیر داشتهباشند عبارتند از -max_execution_time.
این تنظیم مشخص میکند که حداکثر زمان اجرای یک اسکریپت PHP چقدر است.
به طور پیشفرض، این مقدار 30 ثانیه است.
شما میتوانید این مقدار را بالاتر ببرید تا cURL فرصت بیشتری برای دریافت پاسخ داشتهباشد.
– default_socket_timeout: این تنظیم مشخص میکند که حداکثر زمان اتصال به یک سوکت چقدر است.
به طور پیشفرض، این مقدار 60 ثانیه است.
شما میتوانید این مقدار را بالاتر ببرید تا cURL فرصت بیشتری برای برقراری اتصال داشتهباشد.
– بررسی سرعت و پایداری اینترنت: اگر شما از یک سرویس اینترنت پایین یا نامطمئن استفاده میکنید، cURL نمیتواند به خوبی با سرور مقصد اطلاعات را جابجا کند.
برای حل این مشکل، شما باید سرویسدهنده خود را عوض کنید یا با استفاده از VPN چاره جوئید.
امیدوارم با خواندن این مقاله، بتوانید این خطا را در وبسایت وردپرس خود حل کنید.
سلام تمام راه های بالارو بررسی کردم اما مشکلم برطرف نشد مشکلو چطور رفع کنم؟