محمد هاني3 نشر 19 مايو 2021 أرسل تقرير نشر 19 مايو 2021 استخدم node.js في مشروع ولدي مفتاح SSL وكذلك شهادة كيف يكنني انشاء خادم HTTPS وماهي الفائدة من استخدامه. اقتباس
0 سامح أشرف نشر 19 مايو 2021 أرسل تقرير نشر 19 مايو 2021 يمكنك إستخدام شهادات SSL في nodejs كالتالي: const https = require('https'); const fs = require('fs'); // تستخدم للتعامل مع الملفات، وسنحتاجها لقراءة محتوى ملفات pem // key.pem و cert.pem عبارة عن مشارات ملفات الشهادة والمفتاح const options = { key: fs.readFileSync('key.pem'), cert: fs.readFileSync('cert.pem') }; // نقوم بتمرير الإعدادات السابقة في التابع createServer // مع إرسال رسالة Hello, World! للتأكد من أن كل شيء يعمل بشكل سليم https.createServer(options, function (req, res) { res.writeHead(200); res.end("Hello, World!\n"); }).listen(8000); الآن يمكنك التوجه إلى الرابط التالي للتأكد من أن شهادة SSL تعمل: https://localhost:8000 1 اقتباس
0 عبدالله عبدالرحمن11 نشر 21 مايو 2021 أرسل تقرير نشر 21 مايو 2021 يمكنك إستخدام الكود السابق للمدرب سامح أشرف فهو الكود الصحيح الموجود في التوثيق الخاص بNode لكن هناك بعض المعلومات الإضافية والمهمة وهي لأن لديك في الكائن fs وظيفتين وهما fs.readFileSync للقراءة بشكل متزامن fs.readFile للقراءة بشكل غير متزامن ففي حالة إنشاء خادم https يجب عليك إستدعاء الوظيفة المتزامنة fs.readFileSync لكي يتم تشغيل الكود بشكل صحيح فإذا قمت بإستخدام الوظيفة الغير المتزامنة fs.readFile وهي مهمة ولكن ليس في هذه الحالة فسيتم تشغيلها بشكل غير متزامن وينتقل التشغيل الى الكود الآخر المتزامن هذا https.createServer(options, function (req, res) { // options undefined res.writeHead(200); res.end("Hello, World!\n"); }).listen(8000) وسيظهر لك خطأ بأن options هي غير معرفة undefined لأنها ستكون معرفة فيما بعد بعد الإنتهاء من الكود المتزامن لذلك تذكر دائماً في هذه الحالة يجب عليك إستخدام الوظيفة المتزامنة fs.readFileSync لكي لاتحصل على مشاكل 1 اقتباس
السؤال
محمد هاني3
استخدم node.js في مشروع ولدي مفتاح SSL وكذلك شهادة كيف يكنني انشاء خادم HTTPS وماهي الفائدة من استخدامه.
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.