Skip to content

Instantly share code, notes, and snippets.

@ThomasDupont
Last active April 27, 2024 08:52
Manage redirection with node js
// exemple de base, à adapter à votre besoin
app.use((req, res, next) => {
const originalUrl = req.originalUrl;
if (originalUrl === '/' || originalUrl.slice(-1) !== '/') {
return next()
}
const baseUrlWithoutTrailingSlashes = originalUrl.replace(/\/+$/, '');
const hasTrailingSlashes = originalUrl !== baseUrlWithoutTrailingSlashes;
if (hasTrailingSlashes) {
const queryIndex = originalUrl.indexOf('?');
let newUrl = baseUrlWithoutTrailingSlashes;
if (queryIndex > -1) {
newUrl += originalUrl.substring(queryIndex);
}
return res.redirect(301, newUrl);
}
next();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment