رسائل الأخطاء

«npm error code ECONNRESET» على Mac

يشير ECONNRESET إلى إعادة ضبط الاتصال قسرًا. وهو لا يحدد مصدر إعادة الضبط. تصفه وثائق Node.js بأنه «أعاد الطرف المقابل ضبط الاتصال».

ينطبق على: يعرض npm 10 والإصدارات الأحدث «npm error». تعرض الإصدارات الأقدم «npm ERR!». جميع إصدارات macOS الحالية.تاريخ التحقق: 29 أكتوبر 2026

الأعراض

  • يتوقف npm install مع ظهور npm error code ECONNRESET.
  • يضيف npm أن هذه مشكلة تتعلق بالاتصال بالشبكة.
  • يحدث ذلك على شبكة شركة أو VPN أو عند استخدام تطبيق أمان.

الأسباب المحتملة

  • وكيل أو مرشح يعيد تعيين الاتصالات. قد يغلق وكيل الشركة أو برنامج الأمان الاتصالات التي لا يسمح بها.
  • فحص TLS. قد يعطّل وكيل يفحص الحركة الآمنة الاتصال. راجع شهادات وكيل الشركة تعطّل أدوات Terminal على Mac.
  • VPN يعيد الاتصال. تُغلق الاتصالات عبر VPN عند إعادة اتصاله.
  • اتصال غير مستقر. تقول وثائق Node.js إن انتهاء المهلة أو إعادة تشغيل الطرف البعيد قد يسبب ذلك.

كيفية التحقق

  1. اعرض إعدادات سجل npm والوكيل.

    npm config get registry
    npm config get proxy
    npm config get https-proxy
  2. اطلب استجابة من السجل.

    npm ping
  3. اختبر السجل باستخدام curl. ابحث عن مُصدر الشهادة.

    curl -v -o /dev/null https://registry.npmjs.org/ 2>&1 | grep -i issuer
  4. جرّب التثبيت على شبكة أخرى، مثل نقطة اتصال هاتف.

كيفية الإصلاح

  1. إذا كانت الشبكة تحتاج إلى وكيل، فعيّنه لـ npm.

    npm config set https-proxy http://proxy.example.com:8080
  2. إذا كان وكيل الشركة يفحص TLS، فأضف شهادته الجذرية إلى Node.js. راجع شهادات وكيل الشركة تعطّل أدوات Terminal على Mac.

  3. زد عدد محاولات npm.

    npm config set fetch-retries 5
  4. إذا كانت VPN أو وكيل أو تطبيق أمان قيد التشغيل، فأوقفه لاختبار قصير. أعد تشغيله بعد الاختبار.

باستخدام Kilobat

  1. يختبر طبيب الاتصال في Kilobat السجل طبقةً بطبقة: الشبكة والوكيل وDNS والقواعد وIPv4 وIPv6 وTLS والخادم. ويحدد الطبقة التي فشلت.

    kilobat why https://registry.npmjs.org/
  2. فحوصات Kilobat هذه مجانية. يشغّلها وكلاء الذكاء الاصطناعي عبر MCP باستخدام diagnose_connection وdiagnose_network. راجع معرفة سبب تعذّر اتصال موقع أو API واحد.

الأسئلة

هل ECONNRESET خطأ في مشروعي؟

عادةً لا. أُغلق الاتصال بالسجل. شغّل التثبيت نفسه على شبكة أخرى للمقارنة.

هل ECONNRESET هو نفسه انتهاء المهلة؟

لا. يشير ECONNRESET إلى إعادة ضبط الاتصال. أما انتهاء المهلة فيعني أن العملية لم تكتمل في الوقت المحدد.

المصادر

تم التحقق في 29 أكتوبر 2026.