Как сделать 301 (308) редирект в Next.js?

Перенаправление с HTTP-статусом 301 это постоянное перенаправление на новый URL-адрес, который рекомендуется для SEO, но в нашем случае мы будем использовать статус за номером 308 — этот статус также информирует поисковые роботы и браузеры о постоянном перенаправлении, и именно он в next.js отдается на значение permanent: true, наверно потому что в какой то степени более постоянный, чем статус 301, который может изменить метод запроса.

Правки мы будем вносит в файл next.config.js

module.exports = {
    async redirects() {
        return [
            {
                source: '/about',
                destination: 'https://new_site/about',
                permanent: true,
            },
        ]
    },
}

redirects — это асинхронная функция, которая ожидает массив, содержащий объекты со свойствами source, destination и иpermanent

  • source — это входящий запрос.
  • destination — это новый путь, на который перенаправляем.
  • permanent true или false — если true будет использоваться код состояния 308, который указывает клиентам/поисковым системам кэшировать перенаправление навсегда, если false будет использоваться код состояния 307, который является временным и не кэшируется.

Массовое перенаправление

Если страниц («урлов») много, то можно воспользоваться массовым перенаправлением благодаря сопоставлению по подстановочным знакам или регулярным выражениям .

Подробнее …

Пример:

module.exports = {
    async redirects() {
        return [
            {
                source: '/:slug',
                destination: 'https://omsk.dev/:slug', // Matched parameters can be used in the destination
                permanent: true,
            },
        ]
    },
}
Эта запись была размещена в Next.js с меткой .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *