اذهب إلى المحتوى

السؤال

نشر

لدي مشروع قديم على خادم الويب Ubuntu. ولكن عندما أحاول تحميل أي مكتبة ضمن npm يظهر لدي الخطأ التالي:

npm ERR! Error: SSL Error: SELF_SIGNED_CERT_IN_CHAIN
npm ERR!     at ClientRequest.<anonymous> (/usr/lib/node_modules/npm/node_modules/request/main.js:252:28)
npm ERR!     at ClientRequest.emit (events.js:67:17)
npm ERR!     at HTTPParser.onIncoming (http.js:1261:11)
npm ERR!     at HTTPParser.onHeadersComplete (http.js:102:31)
npm ERR!     at CleartextStream.ondata (http.js:1150:24)
npm ERR!     at CleartextStream._push (tls.js:375:27)
npm ERR!     at SecurePair.cycle (tls.js:734:20)
npm ERR!     at EncryptedStream.write (tls.js:130:13)
npm ERR!     at Socket.ondata (stream.js:38:26)
npm ERR!     at Socket.emit (events.js:67:17)
npm ERR! Report this *entire* log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>
npm ERR! 
npm ERR! System Linux 2.6.38-13-generic
npm ERR! command "node" "/usr/bin/npm" "install" "jed"
npm ERR! node -v v0.6.12
npm ERR! npm -v 1.0.104

كيف يمكنني حل هذه المشكلة؟

Recommended Posts

  • 0
نشر

يجب عليك تحديث النسخة الحالية من npm من خلال:

npm install npm -g --ca=""

أو في حال أردت إبقاء النسخة الحالية، يجب عليك تنفيذ الأمر التالي والذي يقوم بإخبار npm باستخدام مسجلات معروفة known registars:

npm config set ca ""

كما يمكنك أيضاً العودة إلى التوثيق الرسمي وقراءة بعض الخطوات التي تم شرحها ليتم تطبيقها ضمن مختلف البيئات فيما يتعلق بالتحديث و self signed certificates.

من الحلول الأخرى أيضاً: تحديث node.js وتحديث npm بشكل عام:

npm update npm -g

أو يمكنك تغيير رابط الحصول على المسجلات إلى http بالشكل التالي:

npm config set registry="http://registry.npmjs.org/"

 

  • 0
نشر

قم بتشغيل هذا الأمر لحل المشكلة

npm config set strict-ssl false

أو يجب عليك ترقية npm

// إيقاف الشهادة مؤقتاً من أجل عمل ترقية
npm config set ca ""

// sudo يجب التحديث بصلاحية مسؤول أوبد الأمر ب
sudo npm install npm -g

// إلغاء تغيير 
// config
// السابق
npm config delete ca

// لأنظمة Ubuntu/Debian-sid/Mint
// حزمة node تم إعادة تسميتها الى nodejs 
// و npm لن يجده ، ولإصلاح المشكلة قم بالتالي
sudo ln -s /usr/bin/nodejs /usr/bin/node

اما إذا كنت تستخدم MacOS فقم بإزالة npm

brew uninstall npm

وتثبيته من جديد

brew install npm

وربما ستحتاج لتفيذ هذا الأمر ايضاً

brew update

 

  • 0
نشر

يمكن حذف npm بشكل كامل للتخلص من مشاكل ال cache:

npm rm npm -g

ثم التثبيت بالأمر:

curl https://www.npmjs.org/install.sh | sh

الأفضل إلغاء تثبيت node وتثبيت الأحدث لأنها تحمل أحدث npm مباشرة.

سبب المشكلة أن npm لم تعد  تقوم بعمل التوقيع الذاتي SELF_SIGNED_CERT_IN_CHAIN

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...