أداة Sumor Cloud.
مزيد من الوثائق
خادم ويب SSL باستخدام Express، يدعم HTTP/2
npm i @sumor/ssl-server --save
يتطلب إصدار Node.JS 18.x أو أعلى
نظرًا لأن هذه الحزمة مكتوبة باستخدام وحدة ES، يُرجى تغيير الشيفرة التالية في ملف package.json
الخاص بك:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// الاستماع على البورت 443 بشكل افتراضي إذا لم يتم تحديده، وإعادة توجيه 80 إلى https 443
await app.listen()
console.log('الخادم يعمل على https://localhost:443/')
يرجى إضافة ملفات SSL إلى مجلد الجذر ssl
بالأسماء التالية:
domain.crt
domain.key
ca.crt
(اختياري، سيتم إضافته إلى سلسلة الشهادات)إذا لم يتم العثور عليها، سيقوم الخادم بإنشاء شهادة ذاتية التوقيع.
في حالة تغيير ملفات SSL، سيتم إعادة تحميلها تلقائيًا.
يدعم جميع ميزات express، الفرق الوحيد هو طريقة listen
و close
. الرجاء الرجوع إلى المثال أدناه لمزيد من التفاصيل.
import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'
// يمكنك إضافة أي وسيط express
app.use(bodyParser.json())
// إضافة مسارات
app.get('/', (req, res) => {
res.send('مرحبًا بالعالم!')
})
// الاستماع هو دالة غير متزامنة
await app.listen()
import createApp from '@sumor/ssl-server'
const app = createApp()
// الاستماع هو دالة غير متزامنة
await app.listen()
// الإغلاق هو دالة غير متزامنة
await app.close()
import createApp from '@sumor/ssl-server'
const app = createApp()
// الاستماع هو دالة غير متزامنة
await app.listen(8443, 8080)
console.log(`الخادم يعمل على https://localhost:8443/`)
console.log(`الخادم للإعادة التوجيه يعمل على http://localhost:8080/`)
import createApp from '@sumor/ssl-server'
const app = createApp()
// الاستماع هو دالة غير متزامنة
await app.listen(null, 8080)
console.log(`الخادم للإعادة التوجيه يعمل على http://localhost:8080/`)
بشكل افتراضي، سيستخدم خادم SSL أحدث إصدار مستدام لفترة طويلة من express. يمكنك استخدام تطبيق express الخاص بك عن طريق تمريره إلى دالة createApp
.
import createApp from '@sumor/ssl-server'
import express from 'express'
const expressApp = express()
expressApp.get('/', (req, res) => {
res.send('مرحبًا بالعالم!')
})
const app = createApp(expressApp)
// الاستماع هو دالة غير متزامنة
await app.listen()
console.log('الخادم يعمل على https://localhost:443/')