انتقل إلى المحتوى
HexaTransfer
العودة إلى المدونة
نقل الملفات

أخطاء مهلة نقل الملفات: الأسباب والحلول

هل تحصل على أخطاء مهلة أثناء نقل الملفات؟ افهم الأسباب وتعلم إصلاحات مجربة لمهلات الاتصال وأخطاء الخادم.

تأتي أخطاء المهلة أثناء نقل الملفات من أحد أربعة مصادر: انتظر طلب HTTP الصادر عن العميل استجابةَ الخادم مدةً طويلة (عادةً من 30 إلى 120 ثانية)، أو انتظر الخادم مدةً طويلة أن يرسل العميل البيانات (شائع في عمليات الرفع البطيئة)، أو قطع وسيط بروكسي أو موزّع حِمل الاتصال (القيمة الافتراضية في AWS ALB هي 60 ثانية)، أو أنهى نظام التشغيل اتصال TCP الخامل. يعني الخطأ 504 Gateway Timeout أن موزّع الحِمل لم يستطع الوصول إلى الخادم الأصلي. ويعني 408 Request Timeout أن الخادم توقّف عن انتظار بياناتك. ويعني ERR_CONNECTION_TIMED_OUT أن مصافحة TCP لم تكتمل أصلاً. ولكلٍّ منها حلّ مختلف.

اقرأ نوع المهلة من رسالة الخطأ

تحتاج المهلات المختلفة إلى حلول مختلفة:

  • 504 Gateway Timeout: انقضت مهلة بروكسي وسيط أو موزّع حِمل. المشكلة من جانب الخدمة وعادةً عابرة. أعِد المحاولة أو بدّل المنطقة.
  • 408 Request Timeout: توقّف الخادم عن انتظار بيانات العميل. توقّف الرفع في منتصف الطلب.
  • 524 (Cloudflare): لم يستجب الخادم الأصلي خلال 100 ثانية. من جانب الخدمة.
  • 502 Bad Gateway: تلقّى البروكسي استجابةً غير صالحة من المصدر. انقطاع في الخدمة أو نشر قيد التنفيذ.
  • ERR_CONNECTION_TIMED_OUT: لم يكتمل اتصال TCP بالخادم. مشكلة شبكة أو جدار حماية.
  • ERR_NETWORK_CHANGED: تبدّلت شبكتك أثناء الاتصال. تنقّل Wi-Fi أو انفصال VPN.

تعرض علامة التبويب Network في DevTools الاستجابة الدقيقة والتوقيت ورمز الحالة. التقط لها صورة قبل إغلاق أي شيء.

تنقّل Wi-Fi يُسقط عمليات الرفع الطويلة

تنتقل شرائح Wi-Fi في الحواسيب المحمولة تلقائياً بين النطاقات ونقاط الوصول، وكل انتقال يُسقط اتصال TCP الحالي. تتعطّل عمليات الرفع أحادية التدفق فوراً؛ أما عمليات الرفع المقسّمة إلى أجزاء فتنجو إذا أعادت الخدمة المحاولة على مستوى الجزء.

الحل: اتصل سلكياً عبر Ethernet لعمليات الرفع التي تتجاوز 2 جيجابايت. إن تعذّر ذلك، فعطّل توجيه النطاق في الراوتر (اضبطه على "5 GHz فقط" لاسم SSID الخاص بحاسوبك) وابقَ في الغرفة نفسها. في macOS، أوقف ميزة "الانضمام التلقائي" لكل الشبكات عدا شبكتك الأساسية لمنع البحث عن إشارات أقوى أثناء الرفع.

مهلات موزّع الحِمل من جانب الخدمة

يضبط AWS Application Load Balancer مهلة الخمول افتراضياً على 60 ثانية، ويضبط Nginx proxy_read_timeout افتراضياً على 60 ثانية. الخدمات التي لم تُعدِّل هذه القيم كما يجب تقطع عمليات الرفع التي تتوقّف لحظياً — للتشفير، أو لقراءة قرص بطيء — عند حاجز الـ 60 ثانية.

إذا رأيت مهلات 504 على خدمة بعينها، فالسبب عادةً تكوين موزّع الحِمل لديها. لا يمكنك فعل شيء من جانب العميل سوى إعادة المحاولة. تتعامل برامج الرفع المقسّمة مع هذا بشفافية بإعادة محاولة الجزء الفاشل؛ أما برامج الرفع أحادية التدفق فتفشل كلياً وتبدأ من جديد.

مهلات البروكسي المؤسسي

يفرض Zscaler وBlue Coat وPalo Alto وسائر بروكسيات الشركات مهلاتها الخاصة، وعادةً من 30 ثانية إلى 5 دقائق من الخمول. إذا كانت عملية الرفع تُجري نشاطاً يعتبره البروكسي خاملاً — توقّف للتشفير أو تأخّر إعادة محاولة جزء — يقطع البروكسي الاتصال.

شخّص المشكلة بالرفع خارج شبكة الشركة (نقطة اتصال الهاتف). إذا اختفت المهلات، فالبروكسي هو السبب. اطلب من قسم تكنولوجيا المعلومات إضافة نطاق خدمة النقل إلى قائمة السماح وتجاوز الفحص لتلك النطاقات. البديل شبكة شخصية أو نفق VPN إلى المنزل.

Keepalive على مستوى نظام التشغيل

يُرسل Linux افتراضياً حِزم TCP keepalive بعد ساعتين من الخمول فقط، وهذا عديم الفائدة في نقل الملفات. لدى macOS وWindows إعدادات افتراضية مماثلة. لعمليات الرفع الطويلة جداً على شبكات متذبذبة، تطبّق بعض الخدمات keepalive على مستوى التطبيق عبر إطارات ping في WebSocket أو أجزاء فارغة دورية. إن لم تفعل الخدمة ذلك، فإن الرفع الطويل عبر جدار حماية NAT — مهلة جلسة UDP الافتراضية 5 دقائق في معظم أجهزة التوجيه المنزلية — قد ينقطع عند انتهاء صلاحية إدخال NAT.

تجديد رمز جلسة VPN

يجدّد بعض عملاء VPN رموز الجلسة كل 5 إلى 15 دقيقة. في العملاء الذين يعانون من أخطاء، يُسقط التجديد نفق TCP الأساسي لنصف ثانية فتموت عمليات الرفع الطويلة.

تتعامل VPN المدفوعة (Mullvad، ProtonVPN Plus، IVPN) مع هذا بسلاسة. أما VPN المجانية فغالباً لا. إن كنت ترى مهلات ثابتة عند علامة العشر دقائق، فاشتبه في تجديد VPN. افصل VPN أثناء الرفع إذا كانت خدمة النقل تستخدم أصلاً تشفير TLS 1.3 من طرف إلى طرف.

انتقالات الشبكة الخلوية

تنتقل البيانات الخلوية بين الأبراج مع تحرّكك. كل انتقال إمّا (أ) يحتفظ بعنوان IP عبر إدارة التنقّل فيكون شفافاً، أو (ب) يُعيّن عنواناً جديداً فينقطع الاتصال. على LTE، تكون معظم الانتقالات شفافة. أما على 5G، خاصةً mmWave، فقد تغيّر الانتقالات إلى sub-6 أو التراجع إلى LTE عنوانَ IP وتقطع الاتصالات.

إن كنت ترفع من مركبة متحرّكة على الشبكة الخلوية، فتوقّع الانقطاعات. تتعامل برامج الرفع المقسّمة القابلة للاستئناف مع هذا جيداً؛ أما برامج الرفع أحادية التدفق فلا.

مهلات WAF وmod_security

إن كانت الخدمة خلف جدار حماية لتطبيقات الويب (Cloudflare WAF، AWS WAF، ModSecurity)، فقد يُصنّف WAF عملية رفع طويلة على أنها مشبوهة ويقطعها. الأعراض: تنجح عمليات الرفع الصغيرة وتفشل عند حدّ معيّن — غالباً 1 جيجابايت أو 10 جيجابايت حسب تكوين WAF — باستجابات 403 أو 502.

لا يمكنك إصلاح شيء من جانب العميل. أبلِغ الخدمة. إن WAF المضبوط جيداً يسمح بعمليات الرفع المقسّمة دون تصنيفها.

المهلات الافتراضية في المتصفح

للمتصفحات مهلات طلب أيضاً، وإن كانت عادةً سخيّة لعمليات الرفع. يمنح Chrome وFirefox طلبات XHR وfetch وقتاً غير محدود افتراضياً، لكنها تُنهي الاتصالات الخاملة بعد 5 دقائق في بعض التكوينات. يمكن لـ Service Workers اعتراض المهلات وتمديدها.

إن كانت JavaScript الخاصة بالخدمة تضبط xhr.timeout = 30000 أي 30 ثانية لكل جزء، فستفشل الأجزاء البطيئة. هذا خطأ من جانب الخدمة؛ أبلِغ عنه.

فحص برامج مكافحة الفيروسات لحركة HTTPS

يقوم Windows Defender مع تفعيل "HTTPS inspection"، وNorton، وBitdefender، وأمثالها بدور الوسيط MITM لاتصالات HTTPS لفحص المحتوى. في عمليات الرفع الكبيرة، يضيف الفحص نفسه زمن استجابة قد يدفع الأجزاء إلى تجاوز المهلات من جانب الخادم.

عطّل فحص HTTPS مؤقتاً — لا كامل برنامج الحماية، بل فحص HTTPS فقط — أثناء عمليات الرفع الكبيرة. إذا نجحت عمليات الرفع، فأضف خدمة النقل إلى قائمة الاستثناءات في برنامج الحماية بشكل دائم.

منطق إعادة المحاولة والتراجع الأسّي

تعيد برامج النقل المصمّمة جيداً محاولة الأجزاء الفاشلة بتراجع أسّي: ثانية واحدة، ثم 2، ثم 4، ثم 8. تُعالج عثرة شبكة قصيرة بشفافية. أما البرامج التي لا تحوي منطق إعادة المحاولة فتفشل عند أول خطأ.

إن كنت تستخدم خدمة لا تعيد المحاولة تلقائياً، فسترى المزيد من الإخفاقات الناجمة عن المهلات. اختر برنامجاً أو خدمة تتولّى إعادة المحاولة نيابةً عنك.

أعِد المحاولة بعد 15 دقيقة

بعض المهلات عابرة: عثرة في حافة Cloudflare، أو نشر للخدمة، أو وصلة عبور مزدحمة. أعِد المحاولة بعد 15 دقيقة قبل التصعيد. إن فشل مجدداً، فبدّل إلى شبكة مختلفة لتحديد ما إذا كانت المشكلة من جانبك أم جانبهم.

اختر خدمة بإعادة محاولة قوية

للملفات الكبيرة على شبكات غير موثوقة، تريد خدمة تعيد محاولة الأجزاء الفاشلة، وتحتفظ بحالة الجلسة لاستئنافها، ولا تفرض مهلة صارمة من جانب الخادم. يُجري HexaTransfer عمليات رفع مقسّمة متوازية مع إعادة محاولة لكل جزء وتشفير AES-256-GCM من جانب العميل، فرفع 10 جيجابايت على اتصال متقطّع يعيد محاولة الأجزاء المتأثّرة بشفافية بدلاً من إفشال النقل كاملاً عند أول عثرة شبكة.

جرّبها على hexatransfer.com — مجاني، بدون حساب، حتى 10 جيجابايت.

أرسل ملفات كبيرة بأمان مع تشفير من طرف إلى طرف

انقل ملفات حتى 10 جيجابايت مجاناً مع تشفير من طرف إلى طرف. لا حاجة لحساب. يتم تشفير ملفاتك في متصفحك قبل الرفع — لا أحد آخر يستطيع قراءتها.

إرسال ملف