Nginx настроить перенаправление при ошибке 404

Рейтинг: 0Ответов: 1Опубликовано: 15.02.2023

В конфигурационном файле есть

location / {
    location ~* ^.+\.(webp|css|js|woff2|svg|png|ico)$ {
        try_files $uri $uri/ @fallback;
        expires modified +1w;
    }
    location / {
        try_files /does_not_exists @fallback;
    }
}

Что необходимо добавить, в случаи если страница отдает

404 Not Found
The requested URL****

Отдать код 404, сообщить что данной страницы не существует. И тут же переадресовать на главную страницу.

введите сюда описание изображения

Ответы

▲ 1Принят

Вообще-то тут или 404 на стороне nginx или редирект, но можно 404 + редирект через заданное время на JS или PHP. Например на странице обработки 404-ой ошибки:

На JS:

<head>
    ....
    <script>
        setTimeout(function() {
            document.location.href = "https://yandex.ru";
        }, 3000); // Задержка 3 секунд
    </script>
...
</head>

Или на PHP:

<?php
header("HTTP/1.1 404 Not Found", true);
header("Refresh: 3;url=https://yandex.ru", true);

echo "Page not found";