Я пытаюсь перенаправить URL-адреса без www на www в моем приложении Node JS / Express.
Следующий фрагмент успешно выполняет перенаправление 301
function checkUrl(req, res, next) {
let host = req.headers.host;
if (host.match(/^www\..*/i)) {
next();
} else {
res.redirect(301, "https://www." + host + req.url);
}
}
Я использую его кактак что
app.all('*', checkUrl);
То, что не покрывается, это http
до https
.Я могу сделать это в своей собственной функции
function ensureSecure(req, res, next) {
if (req.headers['x-forwarded-proto'] === 'https') {
return next();
}
return res.redirect('https://' + req.hostname + req.url);
}
Как я могу объединить два, чтобы я мог охватить оба сценария