در Node.js با استفاده از Express یک سرور HTTPS ساده بسازید که با یک گواهی خود-صادر (self-signed) روی پورت 443 پاسخ دهد و همزمان یک سرور HTTP روی پورت 80 داشته باشد که همه درخواستها را به معادل HTTPS ریدایرکت کند.
12.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 02:15 0.0
از ماژولهای built-in https و http و بسته express استفاده کنید؛ فایل کلید خصوصی و گواهی را با openssl تولید کنید و با fs آنها را بارگذاری کرده و سرور https.createServer را بسازید، سپس با http.createServer یک هندلر ساده بسازید که با کد وضعیت 301 یا 302 به آدرس https ریدایرکت کند. نکات: برای تست محلی ممکن است مرورگر هشداری درباره گواهی خود-صادر نشان دهد، در محیط توسعه از پورتهای غیرقلمرو (مثلاً 3000/3001) استفاده کنید یا دستورالعملهای sudo را برای پورت 80/443 در نظر بگیرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای تولید کلید و گواهی خودصادر از openssl استفاده کنید و آنها را با fs بارگذاری کنید تا https.createServer با اپلیکیشن Express ساخته شود؛ همزمان یک http.createServer ساده بنویسید که همه مسیرها را با کد 301/302 به معادل https ریدایرکت کند. هنگام تست محلی مرورگر هشدار گواهی خودصادر نشان میدهد، بنابراین در محیط توسعه بهتر است از پورتهای غیرقلمرو مثل 3000/3001 استفاده کنید یا اجرای با sudo را برای پورتهای 80/443 در نظر بگیرید. در هدر Location ریدایرکت از همان host و path استفاده کنید تا کوکیها و پارامترها حفظ شوند. اگر میخواهید هشدارها کمتر شوند، میتوانید یک CA محلی بسازید و گواهی را در سیستم یا مرورگر بهعنوان معتبر اضافه کنید.
گزارش