JavaScript — Express не перенаправлять на HTTPS

Экспресс не перенаправить на HTTPS

На этот вопрос уже есть ответ здесь:

Я использую узел и экспресс для создания сервера. Я хотел бы добиться перенаправления HTTP на HTTPS. Это набор, который у меня есть:

 require("dotenv").config(); require("./config/config"); const fs = require("fs"); const path = require("path"); const http = require("http"); const https = require("https"); const privateKey = fs.readFileSync(path.resolve(__dirname, "../private.key"), "utf-8"); const certificate = fs.readFileSync(path.resolve(__dirname, "../certificate.crt"), "utf-8"); const bundle = fs.readFileSync(path.resolve(__dirname, "../ca_bundle.crt"), "utf-8"); const credentials = { key: privateKey, cert: certificate, ca: bundle }; const express = require("express"); const app = express(); const bodyParser = require('body-parser'); //parse application/x-www-form-urlencoded app.use(bodyParser.urlencoded({ limit: 52428800, extended: true, type: "application/x-www-form-urlencoded" })); // parse application/json app.use(bodyParser.json({ limit: 52428800, type: "application/json" })); //enable public folder const publicPath = path.resolve(__dirname, "../public"); app.use(express.static(publicPath)); //global routes settings app.use(require("./routes/index")); //enable https redirect if (process.env.NODE_ENV === 'development') { app.use(function (req, res, next) { if (req.headers['x-forwarded-proto'] !== 'https') { return res.redirect(['https://', req.get('Host'), req.url].join('')); } return next(); }); } const httpServer = http.createServer(app); const httpsServer = https.createServer(credentials, app); httpServer.listen(process.env.PORT, () ={amp}gt; { console.log(`Listening on port ${process.env.PORT}`); }); httpsServer.listen(process.env.SSLPORT, () ={amp}gt; { console.log(`Listening on port ${process.env.SSLPORT}`); }); 

Я перепробовал все решения, перечисленные ниже:
Автоматическое HTTPS-соединение / перенаправление с помощью node.js / express
Экспресс 4.x перенаправить http на https
Перенаправление с HTTP на HTTPS с использованием node.js / Express
Перенаправить http на https express.js

Тем не менее, по какой-то причине редирект не работает. Я думаю, что, возможно, я что-то не настроил должным образом или что-то пропустил. Может ли кто-нибудь, пожалуйста, указать мне правильное направление, пожалуйста?

Я использую "express": "^4.17.1"

Понравилась статья? Поделиться с друзьями:
JavaScript & TypeScript
Adblock
detector